activemq+zookeeper集羣+可複製LevelDB存儲

在ActiveMQ 5.9中,引入了複製LevelDB存儲。它處理使用Apache ZooKeeper從一組配置爲複製單個LevelDB存儲的代理節點中選擇一個主服務器。然後將所有從屬LevelDB存儲與主數據庫同步,通過將所有更新複製到主數據庫,從而使它們保持最新狀態。這可能會成爲首選的主從配置。

 MasterSlave

主/從簡介

以下是可用的不同類型的主/從配置:

 如果使用的是SAN等共享網絡文件系統,則建議使用Shared File System Master Slave。如果您樂於放棄高性能期刊,並使用純JDBC作爲持久性引擎,則應該改用JDBC Master Slave。對於那些願意嘗試新技術的人,“ 複製LevelDB存儲”提供了類似於SAN解決方案的速度,而無需設置高可用性共享文件系統。

原理

 僞集羣

zookeeper集羣搭建參考另一博客:https://blog.csdn.net/qq_39720208/article/details/102891587 

 創建mq三個節點

 

修改控制檯端口

 linux域名映射

 修改三個節點的brokerName一致

 

 持久化配置

參考官網配置

<broker brokerName="broker" ... >
  ...
  <persistenceAdapter>
    <replicatedLevelDB
      directory="activemq-data"
      replicas="3"
      bind="tcp://0.0.0.0:0"
      zkAddress="zoo1.example.org:2181,zoo2.example.org:2181,zoo3.example.org:2181"
      zkPassword="password"
      zkPath="/activemq/leveldb-stores"
      hostname="broker1.example.org"
      />
  </persistenceAdapter>
  ...
</broker>

 

 

 依次修改消息端口

1節點默認

 

 創建zookeeper集羣shell腳本

 mq集羣啓動shell腳本

 查看zookeeper啓動

 客戶端啓動成功查看mq是否在zookeeper中

 

 

查看master

 

 

 

   

說明只能訪問主節點 ,控制檯輸入ip:8161能進行訪問,其他兩個slave節點無法訪問控制檯

 

代碼測試

說明消息發送到主節點

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章