继生产者篇之后,Kafka Simulator v1.2 版本转向读取侧,以及它最容易被误解的事件:重平衡。本篇新增 10 个场景,将课程扩展到 122 个中的 33 个。

v1.2 有什么

消费者组是一个披着简单 API 外衣的协调问题。v1.2 让这种协调变得可见:

重平衡很难讲清楚,因为它只有作为一个序列才有意义:撤销、分配、恢复。静态图把这个序列压缩成一根箭头。在这里你可以逐帧拖动,看着所有权一个分区一个分区地易手。

为什么重要

生产环境中大多数消费者事故其实都是重平衡事故——一次看起来像宕机的部署、一个对慢批处理来说太短的 max.poll.interval.ms、一个悄悄移动了比预期更多分区的 sticky 分配器。以你选择的速度看着重平衡运转,是建立直觉的最快方式,让这些事故在事后看来显而易见。

打开模拟器,添加并杀掉消费者,观察消费者组重新形成。