
Kafka
coderlong
钱能解决的事情,,,我都解决不了。
展开
-
Kafka消费者那些事...
再均衡 再均衡是指分区的所属权从一个消费者转移到另一消费者的行为,它为消费组具备高可用 性和伸缩性提供保障,使我们可以既方便 又安全地删除消费组内的消费者或往消费组内添加消 费者。 不过在再均衡发生期间,消费组内的消费者是无法读取消息的。 也就是说,在再均衡发生期间的这一小段时间内,消费组会变得不可用 。另外,当 一个分区被重新分配给另一个消费 者时, 消费者当前的状态也会丢失。 比如消费者消费完...原创 2019-06-13 10:51:26 · 286 阅读 · 0 评论 -
Kafka时间轮的设计
Kafka中存在大量的延迟操作,比如延迟生产、延迟拉取以及延迟删除等。Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而是基于时间轮自定义了一个用于实现延迟功能的定时器(SystemTimer)。 JDK的Timer和DelayQueue插入和删除操作的平均时间复杂度为O(nlog(n)),并不能满足Kafka的高性能要求,而基于时间轮可以将插入和删除操作的时间...原创 2019-06-20 22:12:09 · 757 阅读 · 0 评论 -
Kafka在发送一条消息时经历了什么?
Kafka在发送一条消息到borker之前,需要经过过滤器,序列化器, 分区器。 整个生产者客户端由两个线程协调运行,这两个线程分别为主线程 和 Sender线程 。在主线程中由 KafkaProducer创建消息,然后通过可能的拦截器、序列化器和分区器的作用之后缓存到RecordAccumulator中 Sender 线程负责从 RecordAccumulator中获取消息并将其发送到 Ka...原创 2019-06-11 22:41:28 · 1309 阅读 · 0 评论