卡夫卡生产者网络中断

Kafka producers in network outage

我正在设计一个基于 Kafka 的系统,用于从通常网络连接不佳的远程平台传递消息。 Kafka 集群将 运行 在一个舒适的数据中心中,所有节点发生故障的可能性很小。让我担心的是生产者在网络中断期间的行为(这肯定会发生并且可能持续数天)。这是基于 Kafka 的系统尚未实现的主要原因,即所有数据都被认为是关键的,应该有 0 数据丢失。目前我们有一个使用 TCP 连接的简单系统,如果不可用,将数据缓冲到 HDD(让我们考虑有足够的 space 来缓冲数据)。

有没有人有在网络中断时使用数据到硬盘缓冲的经验?这会对 Kafka 集群产生负面影响吗?将有数百个提供商,几乎可以肯定其中一些提供商会在任何给定时间中断。

感谢您的帮助!

我没有发现你的计划有任何问题。如果满足您的用例,您可以将其与 Kafka 一起使用。

当消息未成功发送时,Kafka Producer 会通知您。所以你必须处理这种情况并执行写入磁盘。此外,当连接恢复时,您还必须处理发送写入磁盘的所有数据。

None 这会以任何方式影响集群。