我有2个Kafka集群,每个集群有2个节点,每个集群有2个zookeeper。它们实际上位于欧盟和美国。我已成功地使用以下配置配置了镜像制作器。
Kafka Version : kafka_2.12-3.4.0
Java Version : Open JDK 1.8.0_372
OS Version : Linux 5.14.0-162.23.1.el9_1.aarch64
mm2.properties
--------------
clusters = A, B
A.bootstrap.servers = xa:9092,xb:9092
B.bootstrap.servers = ya:9092,yb:9092
A->B.enabled = true
A->B.topics = .*
A->B.sync.group.offsets.enabled = true
replication.factor=1
checkpoints.topic.replication.factor=1
heartbeats.topic.replication.factor=1
offset-syncs.topic.replication.factor=1
offset.storage.replication.factor=1
status.storage.replication.factor=1
config.storage.replication.factor=1
refresh.topics.enabled=true
refresh.topics.interval.seconds = 1
replication.policy.class=org.apache.kafka.connect.mirror.IdentityReplicationPolicy
我可以发布来自欧盟的数据,并成功地从美国集群消费。我可以从给定集群的1个节点发布数据,并使用同一集群的另一个节点,延迟小于50ms。
现在的问题是两个集群之间的延迟。使用以下配置需要20秒以上。
1条答案
按热度按时间pepwfjgg1#
使用基于zookeper的设置,从欧盟到美国的镜像延迟约为20秒。我已经重新设置它与KRaft为基础的方法。现在它表现良好。延迟从20秒缩短至80毫秒。连接镜像生成器中没有更改。现在我必须用新的Appraoch做负载测试。
参考:https://www.baeldung.com/kafka-shift-from-zookeeper-to-kraft