千家信息网

ActiveMQ集群Master-Slave + Broker Cluster模式的示例分析

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,ActiveMQ集群Master-Slave + Broker Cluster模式的示例分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题
千家信息网最后更新 2025年01月24日ActiveMQ集群Master-Slave + Broker Cluster模式的示例分析

ActiveMQ集群Master-Slave + Broker Cluster模式的示例分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

一、简介

Master-Slave集群:

由至少3个节点组成,一个Master节点,其他为Slave节点。只有Master节点对外提供服务,Slave节点处于等待状态。当主节点宕机后,从节点会推举出一个节点出来成为新的Master节点,继续提供服务。

优点是可以解决多服务热备的高可用问题,缺点是无法解决负载均衡和分布式的问题。

Broker Cluster集群:

Broker-Cluster部署方式中,各个broker通过网络互相连接,并共享queue。当broker-A上面指定的queue-A中接收到一个message处于pending状态,而此时没有consumer连接broker-A时。如果cluster中的broker-B上面有一个consumer在消费queue-A的消息,那么broker-B会先通过内部网络获取到broker-A上面的message,并通知自己的consumer来消费。

优点是可以解决负载均衡和分布式的问题。但不支持高可用。

所以,最完美的解决方案是将两者结合起来。

二、准备工作

1、集群规划:

Broker-a



集群成员

端口


openwire

amqp

stomp

mqtt

ws

Admin Port


192.168.2.86
192.168.2.87
192.168.2.88

61619

5675

61643

1886

61644

8191


Broker-b



集群成员

端口


openwire

amqp

stomp

mqtt

ws

Admin Port


192.168.2.86
192.168.2.87
192.168.2.88

61719

6675

61743

2886

61744

8291


2、下载MQ安装包:

http://archive.apache.org/dist/activemq/5.14.4/apache-activemq-5.14.4-bin.tar.gz

3、安装JDK

yum -y install java-1.7.0-openjdk*

三、集群安装

3.1、配置Master-Slave

192.168.2.86上操作

解压安装包

tar -zxf apache-activemq-5.14.4-bin.tar.gz

mv apache-activemq-5.14.4 activemq-cluster1 #broker-a集群

cp -r activemq-cluster1 activemq-cluster2 #broker-b集群

Master-Slave基于Zookeeper

修改activemq-cluster1的activemq.xml文件

vi activemq-cluster1/conf/activemq.xml

broker-a的配置:

directory="${activemq.data}/leveldb"

replicas="3"

bind="tcp://0.0.0.0:0"

zkAddress="192.168.2.93:2281,192.168.2.93:2381,192.168.2.93:2481"

zkPassword=""

hostname="192.168.2.86"

sync="local_disk"

zkPath="/activemq/leveldb-stores"

/>

修改activemq-cluster2的activemq.xml文件

vi activemq-cluster2/conf/activemq.xml

broker-b的配置:

directory="${activemq.data}/leveldb"

replicas="3"

bind="tcp://0.0.0.0:0"

zkAddress="192.168.2.93:2281,192.168.2.93:2381,192.168.2.93:2481"

zkPassword=""

hostname="192.168.2.86"

sync="local_disk"

zkPath="/activemq/leveldb-stores2"

/>

brokerName一致才会认为是同一个Master-Slavecluster,且至少有3个才会成功,否则无法选主,导致没有broker可以提供服务。

3.2、配置Broker Cluster

broker-a配置文件加入以下内容:

broker-b配置文件加入以下内容:

然后把activemq-cluster1、activemq-cluster2目录分别拷贝到192.168.2.87,192.168.2.88

scp -r activemq-cluster1/ 192.168.2.87:~/

scp -r activemq-cluster1/ 192.168.2.88:~/

scp -r activemq-cluster2/ 192.168.2.87:~/

scp -r activemq-cluster2/ 192.168.2.88:~/

3.3、启动集群

启动broker-a (3个节点)和 broker-b(3个节点)

每台服务器执行以下命令:

activemq-cluster1/bin/activemq start

activemq-cluster2/bin/activemq start

查看日志可以看到2个broker直接建立链接的log

Broker-a

INFO | Successfully connected to tcp://192.168.2.87:61719

INFO | Network connection between vm://broker-a#0 andtcp://192.168.2.87:61719 (broker-b) has been established.

Broker-b

Network connection between vm://broker-b#6and tcp://192.168.2.88:61619 (broker-a) has been established. |

看完上述内容,你们掌握ActiveMQ集群Master-Slave + Broker Cluster模式的示例分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

集群 节点 配置 问题 服务 内容 文件 模式 示例 分析 均衡 优点 分布式 成员 方法 更多 状态 端口 网络 消费 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 1万个账号需要多少数据库 辽宁贷财互联网科技有限公 数据库上一周一段时间 安信通数据库安全扫描系统 独立外贸服务器租用 软件开发面试薪资怎么谈 三七的网络安全宣传视频 清华三维eps数据库已被锁定 电脑软件开发者模式 数据库同步文字与格式错误 数值数据和分类数据库 银行网络安全风险排查方案 网络安全对国家重要性论文 通讯技术对网络技术的影响 网络安全课程实验系统设计 领导干部网络安全书 黄山系统软件开发公司哪家好 协同办公oa软件开发 太仓知名服务器厂家直销价格 三级网络技术拿证要求 男主是做网络安全维护的小说 数据库看存储过程 网吧服务器多久重启 斗破苍穹手游服务器共通吗 新华互联网科技升级 监控服务器是什么 苍南机械刀片服务器售后保障 装数据库为什么显示重启计算机 运营商限制服务器怎么处理 沈阳网络安全宣传视频
0