据我所知,组织广播(即每个消费者接收所有消息)的最佳方式是给每个消费者自己的消费者组id。
问题是” If all consumers in a group leave the group, the group is automatically destroyed
“(资料来源:https://jaceklaskowski.gitbooks.io/apache-kafka/kafka-properties-group-id.html)这意味着如果我的消费者用键按下相应的条目 groupId,topicName,partitionNumber
至 __consumer_offsets
将被删除,这意味着当消费者再次上升时,使用相同的组id,它将无法读取下降时发送的消息。
有人知道解决这个问题的办法吗?
1条答案
按热度按时间mklgxw1f1#
the group is automatically destroyed
但这并不意味着,所有关于团队的信息都消失了。我认为它与存储在内存中的数据有关。关于offset
未从中删除__consumer_offsets
. 取决于offsets.retention.minutes
属性,(代理属性)旧的偏移量被删除。默认情况下为7天(10080分钟)在apachekafka文档中,您可以找到有关
offsets.retention.minutes
房地产经纪人配置offset.retention.minutes-在消费组失去所有消费者(即变为空)后,其偏移量将保留此保留期,然后丢弃。对于独立使用者(使用手动分配),偏移量将在上次提交时间加上此保留期后过期。
意思是,如果
offsets.retention.minutes
分钟特定组中的任何消费者都将无法连接,有关偏移量的信息将被删除。