Kafka生产者消息发布模式源码解析
【摘要】 发送消息的流程
Producer根据指定的partition方法(round-robin、hash等),将消息发布到指定topic的partition里面kafka集群接收到Producer发过来的消息后,将其持久化到硬盘,并保留消息指定时长(可配置),而不关注消息是否被消费Consumer从kafka集群pull数据,并控制获取消息的offset
1 同步发送模式...
发送消息的流程
- Producer根据指定的partition方法(round-robin、hash等),将消息发布到指定topic的partition里面
- kafka集群接收到Producer发过来的消息后,将其持久化到硬盘,并保留消息指定时长(可配置),而不关注消息是否被消费
- Consumer从kafka集群pull数据,并控制获取消息的offset
1 同步发送模式源码
2 异步发送模式源码流程
3 总结
3.1 同步发送模式特点
- 同步的向服务器发送RPC请求进行生产
- 发送错误可以重试
- 可以向客户端发送ack
3.2 异步发送模式特点
- 最终也是通过向服务器发送RPC请求完成的(和同步发送模式一样)
- 异步发送模式先将一定量消息放入队列中,待达到一-定数量后再一起发送;
- 异步发送模式不支持发送ack,但是Client可以调用回调函数获取发送结果
所以,性能比较高的场景使用异步发送,准确性要求高的场景使用同步发送。
文章来源: javaedge.blog.csdn.net,作者:JavaEdge.,版权归原作者所有,如需转载,请联系作者。
原文链接:javaedge.blog.csdn.net/article/details/110555727
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)