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

如果subscribe方法被调用两次,groupId是否会丢失偏移位置?

佘修为
2023-03-14

我有一个KafkaConsumer,它为特定主题(例如topic1)调用subscribe方法。在订阅了来自这个主题1的消息之后,我就调用了另一个主题的subscribe方法(例如topic2)。

最后,我称之为commitSync——topic1和topic2偏移量都会被提交吗?

非常感谢堆垛机:)

共有1个答案

斜浩穰
2023-03-14

使用commitSync()commitSync()方法提交偏移量时(不传递偏移量),仅提交当前分配给使用者的分区的偏移量。

如果您以前订阅过其他主题,则此信息不会保留在使用者中,属于以前主题的偏移量也会丢失。

您需要在更改订阅之前提交,或者可以在更改订阅之前使用position()检索偏移量,并在最后使用一种接受偏移量的提交方法(例如commitSync(offset))手动提交所有偏移量。

 类似资料:
  • 问题内容: 我在Go中关注一个简单的Web服务器示例。 我插入了一条语句,使生成的代码如下所示: 问题是,每当我在Web浏览器中加载端口8000时,此函数就会被调用两次。这是一个问题,因为我打算在每次页面访问时增加一个计数器。通过这种行为,计数器将增加两次。OTOH,如果我这样做,它只会被调用一次。 我觉得我在这里失踪真的很愚蠢。 问题答案: 只需记录请求。您将意识到您的浏览器还请求/favico

  • 我是个新手。我读了这个问题,但没有解决我的问题。我认为我对组件的理解是错误的。我的组件及其父组件如下所示:父组件: } 孩子: } 和索引。js: 首次安装后,控制台写入"id"两次。我不明白为什么?

  • 我注意到我的bean在jar中的spring boot应用程序上一次调用的和两次。下面是两次初始化的示例bean。 和被调用两次: 从日志中,PostConconfit首先被调用: 第二个是: @Scheduled被调用了两次一次: 当我删除时,和只被调用了一次。我非常确定类只有一个实例。

  • 为什么该方法使用UTC时区()而不包括本地时间偏移量()?方法名称中的“ISO”指的是ISO 8601-它允许将“时区指定”表示为其格式的一部分。 换句话说,告诉我日期和时间,以及时区偏移量(通过)。但是只告诉我一个时区中的日期和时间-它丢弃了在区域设置中产生的时间信息。 也包括始发时区与UTC的偏移量不是很有意义吗?省略+/-hh:ss会丢失关于原始的信息(如果它用于序列化的话)。 我的所有AJ

  • 出身背景 我正在使用命令行界面对DB2运行flyway迁移。我做了很多测试,一切都很好。我添加了一些命令以导致失败。 问题 有人能确认如果迁移失败并且数据库支持DDL,是否应该回滚更改表、删除表或创建表吗?当我测试它时,它看起来像是在同一个flyway脚本中失败后没有回滚更改表添加列语句。

  • 对于noob的问题很抱歉,我需要卸载node并重新安装它以获得一个不同的版本,我只是想知道这是否意味着我会丢失visual studio上的代码或任何相关文件,以及重新安装node后新的node版本是否会应用到现有的存储库中