小令童鞋

梅干菜你个小酥饼哦。

文章

Kafka深入解析

Kafka中消息是以topic进行分类的,生产者生产消息,消费者消费消息,都是面向topic的。 topic是逻辑上的概念,而partition是物理上的概念,每个partition对应于一个log文件,该log文件中存储的就是producer生产的数据。Producer生产的数据会被不断追加到该log文件末端,且每条数据都有自己的offset。消费者组中的每个消费者,都会实时记录自己消费到了哪个offset,以便出错恢复时,从上次的位置继续消费。

Kafka概述

Kafka是一个分布式的基于发布/订阅模式的消息队列,主要应用于大数据实时处理领域。

Kafka API操作实践

  Kafka的Producer发送消息采用的是异步发送的方式。在消息发送的过程中,涉及到了两个线程——main线程和Sender线程,以及一个线程共享变量——RecordAccumulator。main线程将消息发送给RecordAccumulator,Sender线程不断从RecordAccumulator中拉取消息发送到Kafka broker。 Consumer消费数据时的可靠性是很容易保证的,因为数据在Kafka中是持久化的,故不用担心数据丢失问题。   由于consumer在消费过程中可能会出现断电宕机等故障,consumer恢复后,需要从故障前的位置的继续消费,所以consumer需要实时记录自己消费到了哪个offset,以便故障恢复后继续消费。   所以offset的维护是Consumer消费数据是必须考虑的问题。

梅干菜你个小酥饼哦。

© 2020 小令童鞋

Powered by 菠萝博客 Bolo
Theme bolo-sakura by Mashiro
浏览 89902 文章 78 评论 148
浙ICP备19040285号-1

浙公网安备 33011002014174号

浙公网安备 33011002014174号

主题 | Theme