Kafka:controller_epoch和leader_epoch中的数字是什么意思?

时间:2016-12-01 18:55:56

标签: apache-kafka

Kafka在zookeeper中更新状态信息,如下所示。 _epoch数字究竟意味着什么? Kafka文档似乎没有对这些术语做出很好的解释。

[zk: localhost:2181(CONNECTED) 69] get /brokers/topics/my-topic/partitions/1/state
{"controller_epoch":29,"leader":2,"version":1,"leader_epoch":28,"isr":[2,1,0]}

1 个答案:

答案 0 :(得分:6)

这是一种决定版本号。经纪人跳过除控制器上的最新决定之外的所有决定。 Epoch可用于跟踪控制器决策的生成和有效性。

Epoch与Raft协议中的“术语”概念非常相似。