核心组件
1.ProducerInterceptors 拦截器
2.Sender 发送线程
3.Cluster 集群信息(结点、主题、分区)
4.ProducerMetadata 生产者元数据
5.RecordAccumulator 消息缓冲累加器
6.Serializer 序列化器
7.Partitioner 分区器
send()发生消息流程
1.ProducerInterceptors拦截消息,调用onSend()方法
2.调用doSend(),真正开始发生消息流程
3.waitOnMetadata,发送消息前确保主题分区元数据可用
4.调用Serializer对key和value序列化
5.调用Partitioner进行分区路由选择(哈希/轮询/粘性)
6.调用RecordAccumulator将消息放到缓冲区中队列的RecordBatch中
7.唤醒Sender线程,从缓冲区拉取消息,将数据发送到网络中去
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。