栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

设计一套高可用的消息中间件部署架构

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

设计一套高可用的消息中间件部署架构

一、NameServer集群化部署

NameServer采用Peer-to-Peer的方式部署,每个NameServer之间不相互通信,但是每个Broker都会将自己的信息同步到NameServer。

二、基于Dledger的Broker主从架构部署

1、传统的主从架构部署

在Master Broker宕机之后没办法将Slave Broker选举为新的Master Broker,如果主节点宕机之后需要选择新的主节点,需要修改配置文件并重启机器,再次期间服务不可用。

2、基于Dledger的主从架构

当Master Broker宕机之后,会自动选举Slave Broker成为新的Master Broker继续对外提供服务。

三、Broker是怎么跟NameServer进行通信的

Broker会跟每个NameServer建立TCP的长连接,每隔三十秒发送心跳信息给NameServer,NameServer会每隔十秒进行一次心跳检查,超过120秒没有发送心跳消息的Broker会被自动剔除。

四、对于生产者和消费者系统也要多机器部署。

五、生产者是如何将消息发送给Broker

1、生产者会向NameServer拉取路由信息,信息包括集群包括哪些Broker,哪些Topic在哪些Broker上。

2、选择Broker的算法,可以是负载均衡算法或者round robine算法或者hash算法

3、生产者发送消息肯定是发送到Master Broker然后向Slave Broker进行同步

六、消费者怎么从Broker消费消息

1、从NameServer拉取路由信息

2、选择Broker的算法,可以是负载均衡算法或者round robine算法或者hash算法

3、消费者消费消息可以是Master Broker上的数据,也有可能是Slave Broker上的数据

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/338316.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号