微服务订阅问题之Consumer的订阅规则如何解决

简介: 微服务订阅问题之Consumer的订阅规则如何解决

问题一:Producer和Broker之间的心跳机制是怎样的?


Producer和Broker之间的心跳机制是怎样的?如果Broker在一段时间内没有收到心跳,会有什么后果?


参考回答:

Producer每隔30秒向所有关联的Broker发送心跳,以保持连接活跃。Broker则每隔10秒扫描所有存活的连接。如果Broker在2分钟内没有收到来自Producer的心跳数据,则会关闭与Producer的连接,以确保资源的有效利用和系统的健壮性。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615046

问题二:消息中间件MetaQ中的Consumer是指什么?


消息中间件MetaQ中的Consumer是指什么?


参考回答:

Consumer,即消息的消费者,负责消费消息,consumer与nameserver集群中的随机一个节点建立长连接,定期的从nameServer中获取topic路由信息,并向提供Topic服务的Master、Slave建立长连接,并且定时向Master、Slave发送心跳。Consumer既可以从Master上面订阅消息,也可以从Slave上面订阅消息,订阅规则由Broker配置决定。Consumer每隔30s从Name server获取topic的最新队列情况,这意味着Broker不可用时,Consumer最多最需要30s才能感知。Consumer每隔30s(由ClientConfig中heartbeatBrokerInterval决定)向所有关联的broker发送心跳,Broker每隔10s扫描所有存活的连接,若某个连接2分钟内没有发送心跳数据,则关闭连接;并向该Consumer Group的所有Consumer发出通知,Group内的Consumer重新分配队列,然后继续消费。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615047


问题三:Consumer如何与NameServer和Broker进行交互?


Consumer如何与NameServer和Broker进行交互?


参考回答:

Consumer与NameServer集群中的一个随机节点建立长连接,定期从NameServer中获取Topic路由信息。同时,它会向提供Topic服务的Master和Slave Broker建立长连接,并定期向这些Broker发送心跳以保持连接。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615048


问题四:Consumer的订阅规则是如何决定的?


Consumer的订阅规则是如何决定的?


参考回答:

Consumer的订阅规则由Broker的配置决定。Consumer既可以从Master Broker上订阅消息,也可以从Slave Broker上订阅消息。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615049


问题五:当Broker不可用时,Consumer如何感知,并会做出什么反应?


当Broker不可用时,Consumer如何感知,并会做出什么反应?


参考回答:

当Broker不可用时,由于Consumer每隔30秒从NameServer获取Topic的最新队列情况,它最多需要30秒才能感知到Broker的不可用。一旦感知到Broker断开连接,Consumer会向所有关联的Broker发送心跳。如果某个连接在2分钟内没有发送心跳数据,Broker会关闭该连接,并向该Consumer Group的所有Consumer发出通知。随后,Group内的Consumer会重新分配队列,并继续消费。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615050

相关文章
|
6月前
|
消息中间件 缓存 IDE
MetaQ/RocketMQ 原理问题之消息队列中间件的问题如何解决
MetaQ/RocketMQ 原理问题之消息队列中间件的问题如何解决
|
6月前
|
消息中间件 存储 Kafka
消息中间件MetaQ中的ConsumerGroup是指什么
消息中间件MetaQ中的ConsumerGroup是指什么
|
6月前
|
消息中间件 Cloud Native 中间件
云原生中间件问题之消息中间件MetaQ中的NameServer如何解决
云原生中间件问题之消息中间件MetaQ中的NameServer如何解决
|
8月前
|
Kubernetes Docker 微服务
微服务实践k8s&dapr开发部署实验(3)订阅发布
微服务实践k8s&dapr开发部署实验(3)订阅发布
82 0
|
8月前
|
微服务
SpringCloud-Config服务端微服务从自己的Gitee上获取配置内容配置读取规则
SpringCloud-Config服务端微服务从自己的Gitee上获取配置内容配置读取规则
68 0
|
存储 API Nacos
微服务轮子项目(17) -Alibaba Sentinel限流熔断(动态规则扩展)
微服务轮子项目(17) -Alibaba Sentinel限流熔断(动态规则扩展)
145 0
|
Dubbo 应用服务中间件 Apache
带你读《Apache Dubbo微服务开发从入门到精通》—— 五、 动态配置规则
带你读《Apache Dubbo微服务开发从入门到精通》—— 五、 动态配置规则
140 14
|
Dubbo 应用服务中间件 测试技术
带你读《Apache Dubbo微服务开发从入门到精通》—— 三、 标签路由规则
带你读《Apache Dubbo微服务开发从入门到精通》—— 三、 标签路由规则
241 6
|
Dubbo 应用服务中间件 Apache
带你读《Apache Dubbo微服务开发从入门到精通》—— 二、 条件路由规则
带你读《Apache Dubbo微服务开发从入门到精通》—— 二、 条件路由规则
196 9
|
负载均衡 Dubbo JavaScript
带你读《Apache Dubbo微服务开发从入门到精通》—— 四、 脚本路由规则
带你读《Apache Dubbo微服务开发从入门到精通》—— 四、 脚本路由规则
197 5

热门文章

最新文章