ActiveMQ基于zookeeper的主從(levelDB Master/Slave)搭建
ActiveMQ 5.9.0新推出的主從實現,基于zookeeper來選舉出一個master,其他節(jié)點自動作為slave實時同步消息。因為有實時同步數據的slave的存在,master不用擔心數據丟失,所以leveldb會優(yōu)先采用內存存儲消息,異步同步到磁盤,所以該方式的activeMQ讀寫性能最好因為選舉機制要超過半數,所以最少需要3臺節(jié)點,才能實現高可用。如果集群是兩臺則master失效后slave會不起作用,所以集群至少三臺。此種方式僅實現主備功能,避免單點故障,沒有負載均衡功能。
1、環(huán)境準備
IP
192.168.3.10 server1
192.168.3.11 server2
192.168.3.12 server3
安裝軟件信息:
apache-activemq-5.13.0-bin.tar.gz
zookeeper-3.5.2-alpha.tar.gz
ZooInspector.zip
2、搭建Zookeeper集群
(1)將zookeeper-3.5.2-alpha.tar.gz文件解壓到/home/wzh/zk目錄;
(2)將zoo_sample.cfg復制一份為 zoo.cfg,并修改其配置信息
wzh@hd-master:~/zk/zookeeper-3.5.2-alpha/conf$ cp zoo_sample.cfg zoo.cfg
wzh@hd-master:~/zk/zookeeper-3.5.2-alpha/conf$vim zoo.cfg
tickTime=2000 initLimit=10 syncLimit=5 dataDir=/tmp/zookeeper clientPort=2181 server.1=192.168.3.10:2888:3888 server.2=192.168.3.11:2888:3888 server.3=192.168.3.11:2888:3888
(3)創(chuàng)建/tmp/zookeeper目錄
在該目錄下創(chuàng)建名為myid的文件,內容為1(這個值隨server而改變)
(4)將server1上的/home/wzh/zk/zookeeper-3.5.2-alpha文件夾復制到server2,server3,然后創(chuàng)建/tmp/zookeeper目錄
在該目錄下創(chuàng)建名為myid的文件,內容為2
(5)啟動zookeeper
[192.168.3.10]
wzh@hd-master:~/zk/zookeeper-3.5.2-alpha/bin$ ./zkServer.sh start ZooKeeper JMX enabled by default Using config: /home/wzh/zk/zookeeper-3.5.2-alpha/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
[192.168.3.11]
wzh@hd-slave1:~/zk/zookeeper-3.5.2-alpha/bin$ ./zkServer.sh start ZooKeeper JMX enabled by default Using config: /home/wzh/zk/zookeeper-3.5.2-alpha/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
[192.168.3.12]
wzh@hd-slave2:~/zk/zookeeper-3.5.2-alpha/bin$ ./zkServer.sh start ZooKeeper JMX enabled by default Using config: /home/wzh/zk/zookeeper-3.5.2-alpha/bin/../conf/zoo.cfg Starting zookeeper ... STARTED
3、搭建ActiveMQ集群
(1)將apache-activemq-5.13.0-bin.tar.gz解壓到/home/wzh/amq
(2)修改activemq.xml配置文件
【1】將broker節(jié)點的brokerName設置為wzhamq
相關文章
java.lang.NullPointerException異常問題解決方案
這篇文章主要介紹了java.lang.NullPointerException異常問題解決方案,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下2021-08-08
Idea中如何查看SpringSecurity各Filter信息
這篇文章主要介紹了Idea中如何查看SpringSecurity各Filter信息,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01
SpringBoot整合PageHelper實現分頁查詢功能詳解
PageHelper是mybatis框架的一個插件,用于支持在mybatis執(zhí)行分頁操作。本文將通過SpringBoot整合PageHelper實現分頁查詢功能,需要的可以參考一下2022-03-03
Java中對list map根據map某個key值進行排序的方法
今天小編就為大家分享一篇Java中對list map根據map某個key值進行排序的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
SpringBoot時區(qū)問題解決以及徹底解決時差問題
這篇文章主要給大家介紹了關于SpringBoot時區(qū)問題解決以及徹底解決時差問題的相關資料,spring?boot作為微服務簡易架構,擁有其自身的特點,快速搭建架構,簡單快捷,需要的朋友可以參考下2023-08-08




