自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 RocketMQ保持顺序消费

RebalanceService 线程启动后,会以 20s 的频率计算每一个消费组的队列负载、当前消费者的消费队列集合(用 newAssignQueueSet 表),然后与上一次分配结果(用 oldAssignQueueSet 表示)进行对比。这时候会出现两种情况。确保同一时间只有一个消费者可以从特定的消息队列中拉取消息。

2024-10-23 19:15:18 489 1

原创 RocketMQ事务消息原理(小白学习)

发送半消息时,也是跟发送延迟消息一样,不直接发送到原来的Topic中,而是将发往特定的Topic:RMQ_SYS_TRANS_HALF_TOPIC,先将原先的Topic和队列存储在属性里,然后替换TOPIC,队列默认为0。如果是提交,则将消息的信息替换为原来的信息,发往commitLog,如果是回滚就不往commitLog里面发送,消费者不会消费到就相当于回滚了。事务开始时,Producer发送一条半消息给Broker,然后根据本地事务执行结果来决定是向Broker发送提交消息,还是发送回滚消息。

2024-10-23 16:02:30 291

原创 RocketMQ——Producer、Broker、NameSrv、Consumer关系

NameSrv每10s扫描它记录的Broker列表,看看这些Broker是否还活着。Consumer 和 Producer 一样,在启动的时候需要连接 NamerSrv,跟它建立长连接,并且从它获取 topic 和 broker 的映射关系,这样 Consumer 才能知道它想要消费的消息具体在哪个 Broker。Broker需要给集群内的每一台NameSrv都上报路由信息,因此每一台NameSrv存储的信息都是完整的,一台挂掉以后可以随机选择集群中的一台NameSrv进行长连接。

2024-10-23 13:09:55 280

原创 RocketMQ查找消息

RocketMQ是将所有消息(无论是哪个topic)都存入到commitLog中,这样就能利用硬盘的顺序写的特性,提高写入性能。

2024-10-23 10:24:04 701

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除