在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Kafka消息的分发流程是什么?使用kafka向指定Topic发送消息时,如果该Topic具有多个partition,无论消费者有多少,最终都会保证一个partition内的消息只会被一个Consumer group中的一个Consumer消费,也就是说同一Consumer group中的多个Consumer自动会起到负载均衡的效果。
Kafka消息的分发介绍:
• Producer客户端负责消息的分发
• kafka集群中的任何一个broker都可以向producer提供metadata信息,这些metadata中包含”集群中存活的servers列表”、“partitions leader列表”等信息;
• 当producer获取到metadata信息之后, producer将会和Topic下所有partition leader保持socket连接;
• 消息由producer直接通过socket发送到broker,中间不会经过任何”路由层”。事实上,消息被路由到哪个partition上由producer客户端决定,比如可以采用”random””key-hash””轮询”等。
• 如果一个topic中有多个partitions,那么在producer端实现”消息均衡分发”是必要的。
• 在producer端的配置文件中,开发者可以指定partition路由的方式。
• Producer消息发送的应答机制
设置发送数据是否需要服务端的反馈,有三个值0,1,-1
– 0: producer不会等待broker发送ack
– 1: 当leader接收到消息之后发送ack
– -1: 当所有的follower都同步消息成功后发送ack
request.required.acks=0
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
MySQL学习笔记梳理之事务讲解
一般来讲,MySQL事务主要用于处理操作量大,复杂度高的数据。本文将为大家梳理一下事务的相关学习笔记,内容包括了事务的应用场景说明,手动提交事务和自动提交事务。感兴趣的小伙伴,赶紧一起来看看MySQL学习笔记中关于事务的知识点梳理吧!
7163
2020-02-12 20:38:08
Zookeeper从入门到实践要学什么?
ZooKeeper是一种分布式协调服务,它用简单的架构和API,解决了在分布式环境中协调和管理服务的难题。那么,Zookeeper从入门到实践要学什么呢?以博学谷相关的免费课程为例,课程主要讲解了包括集群结构、集群配置、常用命令、部署模式、Zab协议、Dubbo架构等重要核心知识,并结合经典售票案例与实际应用。
6320
2020-06-26 18:22:26
Java入门知识点有哪些?学什么?
Java入门知识点有哪些?零基础入门学习Java开发要学习Java基础语法、关键字、标识符、变量、AScii码和Unicode码、基本数据类型转化、String类、进制、运算符、程序流程控制语句等基础知识。
5746
2021-02-02 11:19:00
小白需要学习的Java入门基础有哪些?
Java编程作为入门比较容易的编程语言,发展前景很好,非常适合零基础的小白入门学习,没有计算机相关基础就怕就是对所学的知识点没有一个全面了解,学习的过程中容易进入误区,影响学习进度,容易造成从入门到放弃。
5322
2021-04-22 16:06:14
30条实用MySQL优化法则
30条实用MySQL优化法则, 应尽量避免在 where 子句中使用!=或<>操作符,否则引擎将放弃使用索引而进行全表扫描。对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
4355
2022-06-30 10:53:44
