testing - Kafka中的消息一致性测试场景
问题描述
我正在构建一个 POC,其中包含一个部署在 Kubernetes 上的 Kafka 集群和三个从 kafka 读取并写入 jms 的 Spring Boot 应用程序,反之亦然。
我想知道如何确保数据完整性和一致性,例如:如果生产者节点失败,消费者将如何继续阅读消息而不会丢失 msg 一致性。是否有详细的场景来测试此功能。
解决方案
有关事务,请参阅Spring for Apache Kafka 文档。
如果您是 Spring 新手;另请参阅Spring Kafka 利用的 Spring Framework 的事务支持。
Kafka 无法参与 JTA (XA) 事务,因此您唯一的选择是通过 Spring 事务同步考虑Best Efforts 1PC 提交,并处理先前已处理的消息(在失败后)重新传递的(小)可能性。
推荐阅读
- python-3.x - 在没有字典或计数器的情况下查找重复的单词
- javascript - 如何重置 ant design table 选定的行?
- python - 程序不打印结果
- javascript - 如何通过 $.loadJSON 使用 DarkSky API 请求?
- php - 为什么我的 PHP 嵌套 while 循环不起作用?
- c# - 如何使用按钮而不是滚动条制作 ScrollViewer?
- php - 如何使用 eloquent 将列与相关表列进行比较
- python - python哪个更好更快?先在 SQL 中进行数据争吵,然后在 pandas 中进行?
- java - 您如何从 Java 调用正在运行的 C# 应用程序中的方法?
- c# - 将字符串列表添加到字典中的不同键