首页 > 其他 > 详细

mq查找路由信息

时间:2020-01-16 01:28:53      阅读:120      评论:0      收藏:0      [点我收藏+]

 

技术分享图片

路由发现:缓存中的路由信息什么时候更新呢?

技术分享图片

 

 

 

技术分享图片

 

 

 

技术分享图片

 

 

 

技术分享图片

 

由QueueData转topicPublishInfo的List<QueueMessage>:

 

 

技术分享图片

 

 

选择消息队列:

sendLatencyFaultEnable=false,默认不启动Broker故障延迟机制,

sendLatenFaultEnable=true,启用Broker故障延迟机制

默认情况:TopicPublishInfo#selectOneMessageQueue:

 

 

技术分享图片

 

 

 

技术分享图片

 

lastBrokerName是上一次选择的执行发送消息失败的Broker。

考虑broker宕机的情况:

首先,NameServer检测Broker是否可用是有延迟的,最短一次心跳检测间隔10s;其次,NameServer不会检测到Broker宕机后马上推送消息给消息生产者,而是消息生产者

“每隔30秒更新一次路由信息”,所以生产者最快感知Broker最新的路由信息也需要30s。如果能引入一种机制,在Broker宕机期间,如果一次消息发送失败后,可以将该Broker暂时排除在消息队列的

选择范围中。

故障延迟机制:

MQFaultStrategy#selectOneMessageQueue:

技术分享图片

 

 

 

技术分享图片

 

 

 

技术分享图片

 

 

 

技术分享图片

 技术分享图片

 

 

技术分享图片

 

 

 

技术分享图片

mq查找路由信息

原文:https://www.cnblogs.com/lccsblog/p/12199300.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!