我在数据中心有一个Kafka群集。可以通过WAN(甚至互联网)进行通信的一堆客户端将向集群发送/接收实时消息。
...可以通过WAN读取或写入远程Kafka群集,但高延迟链接需要进行TCP调整。
通常不建议运行跨越多个数据中心的单个Kafka群集这将导致Kafka写入和Zookeeper写入的非常高的复制延迟,并且如果网络分区,Kafka和Zookeeper都不会保持可用。 /强>
那么客户是否不是通过WAN读取/写入Kafka受到上述粗体中群集的相同限制?
答案 0 :(得分:2)
您突出显示的语句主要针对Kafka / zookeeper群集之间的内部通信,在网络分区期间会发生恶意事件,这在WAN中更为常见。
生产者是孤立的,如果有网络问题,应该能够根据您的设置缓冲/重试。
高级消费者比较棘手,因为正如您所说,需要连接到zookeeper。在断开连接时,将进行重新平衡,并且更高的机会消息将被复制。
请记住,生产者需要能够到达每个Kafka经纪人并且消费者需要能够到达所有zookeeper节点和Kafka经纪人,负载均衡器将无法工作。