Kafka消息队列中关于消息的实现原理
一个业务Topic中保存了100条消息数据,消费者1从Topic中消费消息数据,同时会定期将消费数据的偏移量写入到kafka内部的Consumer_offset主题上,如果消费者1在消费到第50条消息数据时,异常宕机不可用,此时消费者2启动后,就可以通过消费者1写入到Consumer_offset主题中的消息偏移量,根据偏移量就可以计算出消费者是在那条消息消费时宕机的,紧接着从这条消息处开始消费,从而避免消息长期不被消费的问题。故而将其设置了50个分区。其实是有公式计算的,如下所示。
复制链接