繁体   English   中英

Kafka中Consumer level offset和Consumer group offset的区别

[英]Difference between Consumer level offset and Consumer group offset in Kafka

试图了解 Consumer 中的 Offset 和 Consumer 组的 offset 之间的关系。

下面的堆栈溢出链接提供了对消费者组偏移管理的很好的理解。
什么决定了Kafka消费者偏移量? 现在在这里提问,

场景:

我们在消费者组 group1 中有消费者 (c1)。

  1. 偏移值是否将存储在消费者 (c1) 和组 (group1) 两个级别中? 或者如果消费者属于任何消费者组,偏移量将存储在 Only Consumer 组级别?
  2. 如果偏移值将存储在两个级别中,则消费者级别偏移值将覆盖消费者组级别偏移值。

例子

Consumer level offset value - 5 Consumer group level offset value - 8 系统什么时候从8重新启动?

逆转:

Consumer level offset value - 8 Consumer group level offset value - 5 系统什么时候从5重新启动?

这取决于 Kafka消费者组管理,如果使用group.id启用消费者组管理,则偏移量将存储在消费者组级别,以便在重新平衡的情况下,新的消费者可以从偏移量中读取。

如果消费者组管理被禁用偏移量存储在消费下,如果用户不提供它,默认group.id为 null,所以没有机会在两个级别上存储偏移量

偏移过期语义在此版本中略有变化。 根据新的语义,当组订阅了相应的主题并且仍然处于活动状态(有活跃的消费者)时,不会删除组中分区的偏移量。 如果组变空,则在默认偏移保留期(或代理设置的保留期)过去后,其所有偏移将被删除(除非该组再次变为活动状态)。 与不使用 Kafka 组管理的独立(简单)消费者关联的偏移量将在自上次提交以来的默认偏移量保留期(或代理设置的保留期)过去后删除

组 ID:

标识此消费者所属的消费者组的唯一字符串。 如果消费者通过使用 subscribe(topic) 或基于 Kafka 的偏移管理策略使用组管理功能,则需要此属性。

Type: stringDefault: nullValid Values:Importance: high

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM