基于Kafka2.1解读Producer原理


前言

相信现在的javer对于Kafka应该都很熟悉了,不管是八股文还是工作中使用。虽然Kafka server是scala写的,但是client是java写的,所以咱们理解client的代码还是比较容易的,今天先来基于源码解读下Kafka Producer的主体流程


一、Kafka Producer是什么?

这个应该不用过多介绍了吧,我们发送消息到MQ就是通过Kafka Producer来实现的。

二、主要组件

1.Kafka Producer

Kafka Producer的主要流程

1.1 partitioner

partitioner的作用是用来对发送的消息进行partition选择的,譬如msg要发送某个topic,topic里有多个partition,需要选择发往哪个partition。
如果我们发送消息时设置了partition key,那么就按照partition key进行hash,然后选择发送的partition
如果没有设置partition key,那么就默认使用轮询的方式来选择partition

1.2 keySerializer

顾名思义,就是对key进行序列化的工具类。因为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值