永发信息网

kafka做消息队列怎么做分布式

答案:1  悬赏:10  手机版
解决时间 2021-04-08 08:54
kafka做消息队列怎么做分布式
最佳答案
Kafka 分布式消息队列 类似产品有JBoss、MQ


一、由Linkedln 开源,使用scala开发,有如下几个特点:


(1)高吞吐


(2)分布式


(3)支持多语言客户端 (C++、Java)


二、组成: 客户端是 producer 和 consumer,提供一些API,服务器端是Broker,客户端提供可以向Broker内发布消息、消费消息,服务器端提供消息的存储等功能


Kafka 特点是支持分区、分布式、可拓展性强


三、Kafka 的消息分几个层次


(1)Topic 一类主题


(2)Partition 默认每个消息有2个分区,创建Topic可以指定分区数,1天有 1亿行可以分8个分区,如果每天几十万行就一个分区吧


(3)Message 是每个消息


四、数据处理流程


1.生产者 生产消息、将消息发布到指定的topic分区


2.kafka 集群接收到producer发过来的消息后,将其持久化到硬盘,可以指定时长,而不关注消息是否被消费


3.consumer从kafka集群pull或push方式,并控制获取消息的offset偏移量,consumer重启时需要根据offset开始再次消费数据,consumer自己维护offset


五、kafka如何实现高吞吐量


1.充分利用磁盘的顺序读写
2.数据批量发送
3.数据压缩
4.Topic划分多个partition


六、kafka 如何实现load balance &HA


1)producer 根据用户指定的算法,将消息发送到指定的partition
2)存在多个partition,每个partition存在多个副本replica,每个replica分布在不同的broker节点上
3)每个partition需要选取lead partition,leader partition负责读写,并由zookeeper负责fail over 快速失败
4)通过zookeeper管理broker与consumer的动态加入与离开


七、扩容


当需要增加broker节点时,新增的broker会向zookeeper注册,而producer及consumer会根据zookeeper上的watcher感知这些变化,并及时作出调整
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
江西恒发通信工程有限公司瑞金分公司地址在什
即兴评述 年轻人怎样才能"甘坐冷板凳""以求厚
详细说下福特锐界车的缺点
孩子要出生了。但是身份证过期了有影响吗
天天向上 西南科技大学快闪唱的第一首那首歌
把人赞美花生句子,形容人技艺句子
300a三相空气开关最高能带多少kw负载
大学物理电表思考题
iphone4 A1332 国行已越狱无备份 升级6.1失败
中州商务酒店(神火店)我想知道这个在什么地方
我的世界圈地用工具点两点之后提示在用命令之
过筛是什么意思,筛图是什么意思
湖南卫视著名主持人邱启明现在主持什么节目
非常风采注册过商标吗?还有哪些分类可以注册
李易峰和周润发谁有名?谁比较火?
推荐资讯
your diet, it is easy to reduce.A. Watchin
汽车塑料部位划痕处理
首都经贸大学密云分校
用什么擦超市门帘擦的干净 亮
初中成语积累写出给好评!
手工怎么做花灯要最漂亮的做花灯方法要100种
宝汇购物广场在哪里啊,我有事要去这个地方
蓓字配什么字起名好听
怎么用保鲜膜通马桶,跑步能减掉肚子上的赘肉
绝食减肥不喝咖啡,喝茶或者酸奶可以成功不
单选题温家宝总理在向全国人大作《政府工作报
杯子绘画 用烤箱烤后 还需要什么步骤 色彩才
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?