确保 Kafka 集群与 Client 在迁移过程中持续可用的关键在于 "双写机制":
Kafka 中写入的数据会同步到 AutoMQ,反之,AutoMQ 中写入的数据也会同步回 Kafka。这种双向同步机制允许管理员在遇到问题时安全回滚,避免数据丢失或业务中断。
在 Kafka Linking 方案中,负责迁移流程的是 AutoMQ 中的 Partition Leader。它们一方面会作为 Consumer,从 Kafka 的 Partition Leader 中拉取数据;另一方面又作为 Producer,将数据回写到 Kafka 的 Partition Leader,实现双写。
根据职责不同,这些 Partition Leader 拥有不同角色名称:
Kafka → AutoMQ 同步:Fetcher,即 AutoMQ 的 Partition Leader,作为 Consumer,从 Kafka 中拉取数据;
AutoMQ → Kafka 回写:Router,即 AutoMQ 的 Partition Leader,作为 Producer,将数据发布到 Kafka。