码迷,mamicode.com
首页 > 其他好文 > 详细

mq查找路由信息

时间:2020-01-16 00:50:47      阅读:93      评论:0      收藏:0      [点我收藏+]

标签:检测   发送消息   rate   最快   info   cto   broker   one   img   

 

技术图片

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

技术图片

 

 

 

技术图片

 

 

 

技术图片

 

 

 

技术图片

 

由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查找路由信息

标签:检测   发送消息   rate   最快   info   cto   broker   one   img   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!