
rocketmq
文章平均质量分 79
rocketmq源码解析
pumpkin_pk
coder
展开
-
rocketmq源码分析 - 消息队列的平衡/负载均衡RebalanceService
概念在rocketmq中,消费者必须属于一个消费者组。消费者组有两种消费模式:集群:就是一个消费者组内的消费者,每个消费一个topic的某个子集,所有的消费者的子集共同组成topic的所有消息广播:就是消费者组内的所有消费者都消费topic的所有消息我们还知道,在rocketmq中,订阅了某个topic,就相当于订阅了这个topic的所有消息队列,MessageQueue,而Messa...原创 2020-01-08 01:20:46 · 1079 阅读 · 0 评论 -
rocketmq源码分析 -生产者
概念生产者producer,用于生产消息,在rocketmq中对应着MQProducer接口。组件Producer消息生产者。在rocketmq中,生产者对应MQProducer接口:public interface MQProducer extends MQAdmin { //启动 void start() throws MQClientException; //关闭 v...原创 2020-01-04 11:26:35 · 644 阅读 · 0 评论 -
rocketmq源码分析 - producer发送消息的故障延迟机制
概念我们知道,生产者发送消息,需要发送到指定的MessageQueue上,如果发送失败了,则很可能说明这个MessageQueue所在的broker出现了某种问题,则在发送下一条消息或者重试的时候,需要尽可能的避免上次失败的broker。在rocketmq中,MQFaultStrategy负责做这件事情。组件LatencyFaultTolerance用于判断一个broker是否有啥毛病。有...原创 2019-12-28 03:35:05 · 867 阅读 · 0 评论 -
rocketmq源码分析 - namesrv
概念在rocketmq中,NameServer用于Broker的注册与发现。相当于kafka中,zookeeper的角色。不过,相较于zookeeper,NameServer是专用于根据消息队列这一场景下的特定实现。所以,实现上更加的优雅和简洁。作用每台broker启动时,无论是master还是slave,都需要主动向namesrv发送请求,注册自己producer在生产消息前,得知道b...原创 2019-12-27 22:48:47 · 283 阅读 · 0 评论