首页 > 解决方案 > Kafka中的消息一致性测试场景

问题描述

我正在构建一个 POC,其中包含一个部署在 Kubernetes 上的 Kafka 集群和三个从 kafka 读取并写入 jms 的 Spring Boot 应用程序,反之亦然。

我想知道如何确保数据完整性和一致性,例如:如果生产者节点失败,消费者将如何继续阅读消息而不会丢失 msg 一致性。是否有详细的场景来测试此功能。

标签: testingkubernetesapache-kafkaspring-kafkadata-consistency

解决方案


有关事务,请参阅Spring for Apache Kafka 文档。

如果您是 Spring 新手;另请参阅Spring Kafka 利用的 Spring Framework 的事务支持。

Kafka 无法参与 JTA (XA) 事务,因此您唯一的选择是通过 Spring 事务同步考虑Best Efforts 1PC 提交,并处理先前已处理的消息(在失败后)重新传递的(小)可能性。


推荐阅读