kafka producer源码图解
2021-10-20 16:00:19 16 举报
kafka源码图解
作者其他创作
大纲/内容
doSend(发送消息)
网络连接
Partitioner
4
1
broker
获取元数据流程
ProducerRecord
尝试拉取元数据
NetWorkClient
更新元数据信息
唤醒
元数据
集群元数据信息
KafkaThread
sender
生成batch
返回一个等待时间clusterAndWaitTime.waitedOnMetadataMs
MetaData(元数据管理组件)
kafka集群
batch
根据topic获取对应元数据信息
wait
获取到元数据,更新版本号信息,唤醒主线程
producer
kafka 生产者 网络连接图
kafka Producer 流程图
因为重试机制,默认发送5个消息 没有回应 就重试 再次重试的时候 就乱序了 比如: 2 消息没有收到相应,就再次重试,重试就乱序了
5
消息
RecordAccumulator(缓冲区)
触发拉取元数据
封装
序列化key、value
同步阻塞等待拉取元数据
3
主线程
2
校验消息长度
收藏
0 条评论
下一页