卡夫卡生产者网络中断

时间:2019-12-13 22:16:54

标签: networking apache-kafka buffering producer

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

有人在网络中断期间有使用数据进行HDD缓冲的经验吗?这会对Kafka集群产生负面影响吗?将会有数百个提供商,并且几乎可以保证其中的某些提供商在任何给定时间都会中断。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您的计划没有任何问题。如果可以满足您的用例,则可以使它与Kafka一起使用。

当邮件发送失败时,Kafka Producer会通知您。因此,您必须处理这种情况并执行对磁盘的写入。同样,当恢复连接时,您还必须处理将所有写入磁盘的数据发送出去。

这些都不会以任何方式影响集群。