![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MQ
赵泉伟
此人很懒,什么也没留下
展开
-
如何保证 RocketMQ 不丢失消息
0x00. 消息的发送流程一条消息从生产到被消费,将会经历三个阶段:生产阶段,Producer 新建消息,然后通过网络将消息投递给 MQ Broker存储阶段,消息将会存储在 Broker 端磁盘中消息阶段, Consumer 将会从 Broker 拉取消息以上任一阶段都可能会丢失消息,我们只要找到这三个阶段丢失消息原因,采用合理的办法避免丢失,就可以彻底解决消息丢失的问题。0x01. 生产阶段生产者(Producer) 通过网络发送消息给 Broker,当 Broker 收到之后.原创 2020-06-19 15:50:34 · 522 阅读 · 0 评论 -
RocketMQ原理解析
RocketMQ原理解析RocketMQ部署集群.jpg说明:1.NameServer名称服务NameServer是没有状态的,即NameServer中的Broker和topic等状态信息(通过其他角色上报获取)都是保存在内存中的,不会持久化存储(可通过配置实现),集群可以横向扩展。主要功能如下:a.接收Broker(master和slave)启动时的注册路由信息;b.为producer和consumer提供路由服务,即通过topic名字获取所有broker的路由信息;c.接...原创 2020-06-19 11:41:00 · 480 阅读 · 0 评论 -
RocketMQ的消费端负载均衡和Rebalance机制
从源码看RocketMQ的消费端负载均衡和Rebalance机制Consumer的负载均衡RocketMQ在消费端的负载均衡如下图所示,各个partition均匀分布在各个consumer上,如下图所示:所有consumer依次消费每一个partition,如果partition数量不是consumer的整数倍,则排在前面的consumer会消费更多的partition,下面可以看看consumer的实现。Rebalance的实现RocketMQ的consumer负...原创 2020-06-19 11:35:31 · 1819 阅读 · 0 评论