kafka consumer zookeeper 交互逻辑

consumer操作

这里写图片描述
1. kafka各组件通信采用TCP协议。broker端口号:9092,zookeeper端口号:2181。
2. consumer启动时(绿色虚线),与brokers建立一个TCP长连接,生成SimpleConsumer实例,并返回broker配置文件中的域名。
3. consumer根据域名访问brokers获取topic、partition、offset(蓝色虚线)。
4. brokers访问zookeeper的leader组件,根据topic和获取各个partition的offset(黑色虚线)。
5. consumer从brokers上读取数据(红色实线)。

producer操作

这里写图片描述
1. producer启动时(绿色虚线),与brokers建立一个TCP长连接,生成SimpleConsumer实例,并返回broker配置文件中的域名。
3. producer将数据存入broker上(蓝色虚线)。
4. 同时brokers访问zookeeper的leader组件,更新zk上的offset,或者leader定时从brokers刷新offset(黑色虚线)。

注:有关数据仓库等问题,有兴趣的同学可以联系我。TEL/微信:18310801089,公众号:
这里写图片描述