Kafka Consumer每次启动都重置offset到指定位置,不能从上次位置继续消费

deantzzz 2019-01-19 03:21:10
kafka中的一个topic(Topic-A)每次启动消费者都重置偏移量到一个固定的位置,而且这个出问题的Topic-A不保存消费者组信息,用下面命令
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list

./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group group-5

当我程序开启时查到group信息为:
Consumer group 'group-5' has no active members.

关闭之后查看消费者组list和查看指定group的信息都查不到,返回
Error: Consumer group 'group-5' does not exist.

下面是启动程序时Topic-A输出的信息:
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-1, groupId=group-5] Revoking previously assigned partitions []
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-1, groupId=group-5] (Re-)joining group
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-1, groupId=group-5] Successfully joined group with generation 1
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-1, groupId=group-5] Setting newly assigned partitions [A1-0]
o.a.k.c.consumer.internals.Fetcher - [Consumer clientId=consumer-1, groupId=group-5] Resetting offset for partition A1-0 to offset 25143.

最后一行信息:
引用
o.a.k.c.consumer.internals.Fetcher - [Consumer clientId=consumer-1, groupId=group-5] Resetting offset for partition A1-0 to offset 25143.

每次启动Topic-A都会出现这一行信息,把offset重置到25143。
如果就算我运行一段时间,消费到25200,然后关闭程序,下次启动又自动给我重置到25143。
多次启动都是用的group-5.
启动程序后用groups.list命令可以看到group-5,用describe 命令查group-5显示Consumer group 'group-5' has no active members.
关闭程序后用groups.list看不到group-5,,用describe 返回Error: Consumer group 'group-5' does not exist.

下面是另一个正常的Topic启动输出的信息,没有上面那条Resetting offset for partition xxx to offset xxx的信息,每次启动都可以从上次停止位置继续消费。

org.apache.kafka.clients.Metadata - Cluster ID: iQU30Fo1TViA2rkH9cxVYQ
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Discovered group coordinator localhost:9092 (id: 2147483646 rack: null)
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Revoking previously assigned partitions []
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] (Re-)joining group
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Successfully joined group with generation 13
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Setting newly assigned partitions [blockaddresscomplete3-0]


请问我该怎么设置topic-A,让他在每次启动时继续从上次停止位置消费消息,而不是每次启动都重置到固定的offset。

...全文
8048 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
塔克拉马哈 2021-12-07
  • 打赏
  • 举报
回复

解决了吗??

「已注销」 2020-08-18
  • 打赏
  • 举报
回复
引用 楼主 deantzzz 的回复:
kafka中的一个topic(Topic-A)每次启动消费者都重置偏移量到一个固定的位置,而且这个出问题的Topic-A不保存消费者组信息,用下面命令
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group group-5
当我程序开启时查到group信息为:
Consumer group 'group-5' has no active members.
关闭之后查看消费者组list和查看指定group的信息都查不到,返回
Error: Consumer group 'group-5' does not exist.
下面是启动程序时Topic-A输出的信息:
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-1, groupId=group-5] Revoking previously assigned partitions []
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-1, groupId=group-5] (Re-)joining group
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-1, groupId=group-5] Successfully joined group with generation 1
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-1, groupId=group-5] Setting newly assigned partitions [A1-0]
o.a.k.c.consumer.internals.Fetcher - [Consumer clientId=consumer-1, groupId=group-5] Resetting offset for partition A1-0 to offset 25143.
最后一行信息:
引用
o.a.k.c.consumer.internals.Fetcher - [Consumer clientId=consumer-1, groupId=group-5] Resetting offset for partition A1-0 to offset 25143.
每次启动Topic-A都会出现这一行信息,把offset重置到25143。 如果就算我运行一段时间,消费到25200,然后关闭程序,下次启动又自动给我重置到25143。 多次启动都是用的group-5. 启动程序后用groups.list命令可以看到group-5,用describe 命令查group-5显示Consumer group 'group-5' has no active members. 关闭程序后用groups.list看不到group-5,,用describe 返回Error: Consumer group 'group-5' does not exist. 下面是另一个正常的Topic启动输出的信息,没有上面那条Resetting offset for partition xxx to offset xxx的信息,每次启动都可以从上次停止位置继续消费。
org.apache.kafka.clients.Metadata - Cluster ID: iQU30Fo1TViA2rkH9cxVYQ
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Discovered group coordinator localhost:9092 (id: 2147483646 rack: null)
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Revoking previously assigned partitions []
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] (Re-)joining group
o.a.k.c.c.i.AbstractCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Successfully joined group with generation 13
o.a.k.c.c.i.ConsumerCoordinator - [Consumer clientId=consumer-3, groupId=wallet-1] Setting newly assigned partitions [blockaddresscomplete3-0]
请问我该怎么设置topic-A,让他在每次启动时继续从上次停止位置消费消息,而不是每次启动都重置到固定的offset。
解决了吗

1,237

社区成员

发帖
与我相关
我的任务
社区描述
企业软件 中间件技术
社区管理员
  • 中间件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧