本篇文章给大家分享的是有关ActiveMQ高可用集群方案是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
ActiveMQ的集群部署方式主要有三种:
Shared filesystem Master-Slave 部署方式

Shared database Master-Slave 部署方式

基于数据库的Master-Slave集群部署
在ActiveMQ的安装目录/lib/extra 下添加数据库驱动包

修改activemq.xml文件的broker节点开启持久化

在activemq.xml文件中修改持久化策略

在activemq.xml文件中添加数据源

将配置好的activemq全部复制到其他服务器,启动ActiveMQ集群搭建就完成了
Master-Slave集群主要解决了单点故障的问题,Master-Slave集群中的一个节点挂掉,其他的节点任然可用,服务就任然可用。集群搭建好之后在代码中测试时,只需要修改brokerUrl的值,如”failover:(tcp://master:61616,tcp://salve:61616)?initialReconnectDelay=100”
基于Broker-Cluster集群部署
Broker-Cluster集群通过网络连接,将多个broker组合,对外构成一个整体,集群之间共享队列和主题列表

Broker-Cluster集群的搭建非常简单,只需要在activemq.xml文件中指定broker需要连接的其他节点的broker信息即可,在所有broker都启动后,可以在Web管理界面的Network页面内看到连接的信息。
Static Broker-Cluster部署配置示例:
<networkConnectors>
<networkConnector uri="static:(tcp://other-broker:port)" duplex="false" />
<networkConnectors>
Dynamic Broker-Cluster部署配置示例:
<networkConnectors>
<networkConnector uri="multicast://default" />
<networkConnectors>
Master-Slave与Broker-Cluster相结合的集群
Master-Slave集群解决了单点故障的问题,但是仍然只是一个节点处理所有请求。Broker-Cluster可以做到负载均衡,但是无法解决单点故障的问题。Master-Slave与Broker-Cluster两者相结合的集群即可解决单点故障又可保证负载均衡,做到了高可靠和高可用。

Master-Slave与Broker-Cluster集群部署配置示例:
<networkConnectors>
<networkConnector uri="masterslave:(tcp://other-cluster1-master:61616,tcp://other-cluster1-slave:61616)" duplex="false" />
<networkConnector uri="masterslave:(tcp://other-cluster2-master:61616,tcp://other-cluster2-slave:61616)" duplex="false" />
<networkConnectors>
网络连接器配置说明
networkConnector配置属性说明:

以上就是ActiveMQ高可用集群方案是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注天达云行业资讯频道。