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

Spring Kafka手动提交如何在Batch监听器模式下工作

谢宸
2023-03-14

我有一个2分区的主题。我在我的消费者应用程序中使用kafka批处理监听器模式。因为我使用的是单个消费者应用程序,所以我将从两个分区接收消息。一旦消费者应用程序处理了这些消息列表,我希望手动提交每个分区的最大偏移量。

如果我使用MANUAL_IMMEDIATE模式,它会提交每个分区的最高偏移量吗?如果不是,我应该使用什么方法?

共有1个答案

南宫俊喆
2023-03-14

是的确认。ack()将提交接收记录的所有分区中最高偏移量的偏移量。

但是,如果您使用默认的<code>AckMode.BATCH</code>,容器将自动为您执行此操作。这比处理手动确认更简单。

 类似资料:
  • 问题内容: 我有一个带有许多不同复选框和文本字段的JPanel,我有一个已禁用的按钮,并且在设置特定配置时需要将其启用。我需要的是整个JPanel上的侦听器,以在发生任何更改时查找事件。我相信我需要一个动作监听器,但找不到任何东西可以将动作监听器与JPanel桥接 我认为我可以将代码复制和粘贴很多次到面板中的每个侦听器中,但这对我来说似乎是不好的编码习惯。 问题答案: 首先在他的@Sage提意见一

  • 我有一个springboot应用程序,它侦听Kafka流并将记录发送到某个服务以进行进一步处理。服务有时可能会失败。注释中提到了异常情况。到目前为止,我自己模拟了服务成功和异常场景。 侦听器代码: 用户工厂配置如下: 由于REST服务正在抛出RestClientException,它应该进入上面提到的if块。关于FixedBackOff,我不希望SeekToCurrentErrorHandler执

  • 目前,我在一个公共类中的事件上初始化socket..。 然而,由于这个“套接字”类是在应用程序启动时初始化的,所以在不同的活动之外,我不能直接从那里操作我的视图。 我希望避免在活动中编写我的监听器,因为有些接收者对他们来说是共同的(例如身份验证部分,在整个应用程序中都有效)。 null 亚历克斯

  • 我正在开发一个POC,用于在我的项目中实现一个kafka集群。我已经在我的本地机器中设置了一个有3个经纪人的kafka集群。现在,我正在使用Spring MVC REST服务向Kafka服务器发送消息,该服务在内部使用Spring Kafka来生成和使用往返于Kafka集群的消息。现在我正在尝试在代理关闭时,当使用者无法接收来自主题的消息时发送警报。我关闭使用者连接到的唯一代理。我的日志中没有任何

  • 我有一个Kafka接收器任务,通过方法收听Kafka主题 但我不想自动提交偏移量,因为一旦从Kafka取出记录,我就有一些处理逻辑 从Kafka获取记录后,如果处理成功,则只有我想提交偏移量,否则它应该再次从同一偏移量读取。 我可以在Kafka consumer中看到方法,但在中找不到替代方法。

  • 我正在实现spring kafka批处理侦听器,它读取来自kafka主题的消息列表,并将数据发布到REST服务。我想了解在REST服务停止的情况下的偏移管理,不应该提交批处理的偏移,应该为下一次轮询处理消息。我已经阅读了spring kafka文档,但在理解侦听器错误处理程序和批量查找当前容器错误处理程序之间的区别时存在困惑。我使用的是spring-boot-2.0.0。M7及以下版本是我的代码。