当前位置: 首页 > 知识库问答 >
问题:

使用spring cloud Stream Kafka活页夹重复使用邮件

晏正豪
2023-03-14

我们有几个微服务使用spring boot和spring cloud Stream Kafka binder在它们之间进行通信。

偶尔,我们会观察到使用者接收到的重复消息的突发事件--通常是在第一次消费和处理(成功)之后的几天。

虽然我知道Kafka并不保证一次性交货,但考虑到经纪人和服务公司的日志中都没有再平衡事件或任何“可疑的”activity,这看起来还是很奇怪的。由于使用者正在与外部API交互,要使其幂等有点困难。

有没有可能导致重复的原因?我应该找什么来弄清楚这件事?

我们使用的是Kafka broker 1.0.0,而这个特定的消费者使用的是基于Kafka-Client1.0.2(其他服务的版本可能有点不同)的spring cloud流绑定器Kafka 2.0.0。

共有1个答案

史绍晖
2023-03-14

像这样提问时,您应该显示您的配置。

最好的猜测是代理的offsets.retention.minutes

对于现代broker版本(从2.0开始),它默认为1周;旧版本只有一天。

 类似资料:
  • 我正在尝试制作一个定制的spring cloud stream活页夹,但它无法自动注册: 活页夹实现: 配置类: Spring活页夹文件: application.yml 我已经按照spring cloud stream的指导方针创建了一个custome活页夹,但这不起作用。此外,使用@Configuration创建绑定bean会禁用我在类路径上添加的kafka绑定。

  • 我得到的错误是:无效地址:mysmtppassxxxxSMTP->错误:连接到服务器失败:连接超时(110) SMTP错误:无法连接到SMTP主机。SMTP错误:无法连接到SMTP主机 当我执行var_dump($email)时,我得到

  • 我有一个使用kafka活页夹的spring cloud stream应用程序,它可以消费和发送消息。在应用程序中,我使用重试策略配置自定义错误处理程序,并将不可重试的异常添加到处理程序中。配置示例: 但是我看到,如果异常抛出,比应用程序重试处理消息3次。预期行为-如果App. MyCustomException.class抛出,将不会重复消费消息。如何为Spring云流kafka绑定应用程序配置重

  • 是否可以创建一个单例对象,并将其作为一个实例或集合或映射的一部分独立注入? 例如,我有两个类似的Instance: ... 我通过参数直接注入它们,在我的类中使用它们。但是,我也有一个用例,我想把它们都注入到一个集合中。 比如: 是否可以创建使用已定义实例的?如何在集合中单独使用相同的实例?

  • MainActivity在我的应用程序中打开。考虑这个场景, MainActivity(%1)当前正在运行时。通知来了,用户点击并打开Mainactivity(2)。它起作用了。当我点击后退按钮时。Mainactivity(2)被销毁。MainActivity(1)显示给用户,应用程序冻结。我正在寻找关闭MainActivity(1)的方法。

  • 本文向大家介绍Java使用递归复制文件夹及文件夹,包括了Java使用递归复制文件夹及文件夹的使用技巧和注意事项,需要的朋友参考一下 递归调用copyDir方法实现,查询源文件目录使用字节输入流写入字节数组,如果目标文件目录没有就创建目录,如果迭代出是文件夹使用字节输出流对拷文件,直至源文件目录没有内容。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。