ActiveMQ基于zookeeper的主從(levelDB Master/Slave)搭建
ActiveMQ 5.9.0新推出的主從實(shí)現(xiàn),基于zookeeper來選舉出一個(gè)master,其他節(jié)點(diǎn)自動(dòng)作為slave實(shí)時(shí)同步消息。因?yàn)橛袑?shí)時(shí)同步數(shù)據(jù)的slave的存在,master不用擔(dān)心數(shù)據(jù)丟失,所以leveldb會優(yōu)先采用內(nèi)存存儲消息,異步同步到磁盤,所以該方式的activeMQ讀寫性能最好因?yàn)檫x舉機(jī)制要超過半數(shù),所以最少需要3臺節(jié)點(diǎn),才能實(shí)現(xiàn)高可用。如果集群是兩臺則master失效后slave會不起作用,所以集群至少三臺。此種方式僅實(shí)現(xiàn)主備功能,避免單點(diǎn)故障,沒有負(fù)載均衡功能。
1、環(huán)境準(zhǔ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復(fù)制一份為 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的文件,內(nèi)容為1(這個(gè)值隨server而改變)
(4)將server1上的/home/wzh/zk/zookeeper-3.5.2-alpha文件夾復(fù)制到server2,server3,然后創(chuàng)建/tmp/zookeeper目錄
在該目錄下創(chuàng)建名為myid的文件,內(nèi)容為2
(5)啟動(dòng)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é)點(diǎn)的brokerName設(shè)置為wzhamq
相關(guān)文章
IDEA整合SSM框架實(shí)現(xiàn)網(wǎng)頁上顯示數(shù)據(jù)
最近做了個(gè)小項(xiàng)目,該項(xiàng)目包在intellij idea中實(shí)現(xiàn)了ssm框架的整合以及實(shí)現(xiàn)訪問,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05SpringBoot實(shí)現(xiàn)接口文檔自動(dòng)生成的方法示例
在開發(fā)Web應(yīng)用程序時(shí),接口文檔是非常重要的一環(huán),本文主要介紹了SpringBoot實(shí)現(xiàn)接口文檔自動(dòng)生成的方法示例,具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10dubbo新手學(xué)習(xí)之事件通知實(shí)踐教程
這篇文章主要給大家介紹了關(guān)于dubbo新手學(xué)習(xí)之事件通知實(shí)踐的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09idea批量啟動(dòng)多個(gè)微服務(wù)具體實(shí)現(xiàn)
這篇文章主要給大家介紹了關(guān)于idea批量啟動(dòng)多個(gè)微服務(wù)的具體實(shí)現(xiàn),在微服務(wù)開發(fā)過程中,我們經(jīng)常要在本地啟動(dòng)很多個(gè)微服務(wù),文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07解析springBoot-actuator項(xiàng)目構(gòu)造中health端點(diǎn)工作原理
這篇文章主要介紹了springBoot-actuator中health端點(diǎn)工作原理,對spring-boot-actuator的項(xiàng)目構(gòu)造,工作原理進(jìn)行了全面的梳理,側(cè)重health健康檢查部分2022-02-02