国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

ActiveMQ+ZooKeeper 偽集群整合

Honwhy / 3366人閱讀

摘要:前言本案例使用的是偽集群方式,即在一臺主機(jī)上部署個服務(wù)端口不同個服務(wù)端口不同。要想保證負(fù)載均衡得再結(jié)合部署方案,配置網(wǎng)絡(luò)連接器。編碼時,端消費者通過協(xié)議來連接集群。只需使用進(jìn)行配置即可,默認(rèn)端口為。

前言

本案例使用的是偽集群方式,即在一臺主機(jī)上部署3個activemq服務(wù)(端口不同)+3個zookeeper服務(wù)(端口不同)。

真集群部署請看:ActiveMQ+ZooKeeper集群整合
如果需要了解ActiveMQ集群部署的整體概念,可以參考我這篇文章:ActiveMQ集群整體認(rèn)識

原理簡介:
一般在部署ActiveMQ集群的時候,更傾向于使用基于ZooKeeper的Replicated LevelDB Store方式,該方式是Master Slave部署方案的其中一種策略,也是在多臺主機(jī)實現(xiàn)ActiveMQ集群的主流部署方式。 此教程只保證了高可用性。要想保證負(fù)載均衡得再結(jié)合Broker Clusters 部署方案,配置網(wǎng)絡(luò)連接器。

工作流程:
在ZooKeeper中管理多個Broker節(jié)點,根據(jù) Master選舉策略讓其中一個 Broker選舉為Master(只有Master才具備對外提供服務(wù)的能力),剩下Broker為slave。
編碼時,client端(消費者)通過failover協(xié)議來連接ActiveMQ集群。

一、服務(wù)端配置 1. ZooKeeper偽集群配置
-- 服務(wù)端口 集群通信端口 節(jié)點目錄/opt/下
zk1 2181 2887:3887 /zookeeper/zk1
zk2 2182 2888:3888 /zookeeper/zk2
zk3 2183 2889:3889 /zookeeper/zk3
集群通信端口:第一個端口是master和slave之間的通信端口,默認(rèn)是2888;第二個端口是leader選舉的端口,集群剛啟動的時候選舉或者leader掛掉之后進(jìn)行新的選舉的端口默認(rèn)是3888。

在/opt/zookeeper下復(fù)制3個zookeeper服務(wù),并分別配置它們的文件conf/zoo.cfg:

zk1
zk1/conf/zoo.cfg:

# zookeeper的數(shù)據(jù)存儲和日志存儲目錄(如果目錄不存在就新建)
dataDir=/opt/zookeeper/zk1/data
dataLogDir=/opt/zookeeper/zk1/log

#服務(wù)端口
clientPort=2181

# zk集群之間的通信地址
server.1=localhost:2887:3887
server.2=localhost:2888:3888
server.3=localhost:2889:3889

創(chuàng)建zk1/data/myid文件,填入數(shù)字1:

# 由于該zk1是server.1,所以在myid中設(shè)置數(shù)字1
$ vim /opt/zookeeper/zk1/data/myid

zk2
zk2/conf/zoo.cfg:

# zookeeper的數(shù)據(jù)存儲和日志存儲目錄(如果目錄不存在就新建)
dataDir=/opt/zookeeper/zk2/data
dataLogDir=/opt/zookeeper/zk2/log

#服務(wù)端口
clientPort=2182

# zk集群之間的通信地址
server.1=localhost:2887:3887
server.2=localhost:2888:3888
server.3=localhost:2889:3889

創(chuàng)建zk2/data/myid文件,填入數(shù)字1:

# 由于該zk2是server.2,所以在myid中設(shè)置數(shù)字2
$ vim /opt/zookeeper/zk2/data/myid

zk3
zk3/conf/zoo.cfg:

# zookeeper的數(shù)據(jù)存儲和日志存儲目錄(如果目錄不存在就新建)
dataDir=/opt/zookeeper/zk3/data
dataLogDir=/opt/zookeeper/zk3/log

#服務(wù)端口
clientPort=2183

# zk集群之間的通信地址
server.1=localhost:2887:3887
server.2=localhost:2888:3888
server.3=localhost:2889:3889

創(chuàng)建zk3/data/myid文件,填入數(shù)字3:

# 由于該zk3是server.3,所以在myid中設(shè)置數(shù)字3
$ vim /opt/zookeeper/zk3/data/myid

1.2 分別啟動zookeeper服務(wù)
$ /opt/zookeeper/zk1/bin/zkServer.sh start # 啟動zk1服務(wù)
$ /opt/zookeeper/zk2/bin/zkServer.sh start # 啟動zk2服務(wù)
$ /opt/zookeeper/zk3/bin/zkServer.sh start # 啟動zk3服務(wù)

$ /opt/zookeeper/zk1/bin/zkServer.sh status # 查看zk1服務(wù)狀態(tài)
$ /opt/zookeeper/zk2/bin/zkServer.sh status # 查看zk2服務(wù)狀態(tài)
$ /opt/zookeeper/zk3/bin/zkServer.sh status # 查看zk3服務(wù)狀態(tài)

2. ActiveMQ偽集群配置 2.1 修改ActiveMQ配置文件conf/activemq.xmlconf/jetty.xml
-- 服務(wù)端口 jetty控制臺端口 節(jié)點目錄/opt/下
node1 61616 8161 /activemq/node1
node2 61617 8162 /activemq/node2
node3 61618 8163 /activemq/node3

在/opt/activemq/復(fù)制3個activemq服務(wù),并分別配置它們的文件conf/activemq.xml和conf/jetty.xml:
conf/jetty.xml:

node1
/opt/activemq/node1/conf/activemq.xml:



    
    
    


  
  
      

/opt/activemq/conf/jetty.xml:


    
     

node2
/opt/activemq/node2/conf/activemq.xml:


    
    


  
  
      

/opt/activemq/conf/jetty.xml:


    
     

node3
/opt/activemq/node3/conf/activemq.xml:


    
    


  
  
      

/opt/activemq/node3/conf/jetty.xml:


    
     

2.2 依次啟動activemq服務(wù)
$ /opt/activemq/node1/bin/activemq start # 啟動節(jié)點node1服務(wù)
$ /opt/activemq/node2/bin/activemq start # 啟動節(jié)點node2服務(wù)
$ /opt/activemq/node3/bin/activemq start # 啟動節(jié)點node3服務(wù)

$ ps -ef|grep activemq # 檢查進(jìn)程是否運(yùn)行,即activemq是否啟動成功
$ netstat -anp|grep 61616 # 查看服務(wù)端口61616,監(jiān)聽情況
$ netstat -anp|grep 61617 # 查看服務(wù)端口61617,監(jiān)聽情況
$ netstat -anp|grep 61618 # 查看服務(wù)端口61618,監(jiān)聽情況
三、Client使用

該zookeeper+activemq的集群Master Slave部署方案,能夠提供(3-1)/2的容錯率,即3臺服務(wù)器允許宕機(jī)一臺,而不影響整個集群的對外提供服務(wù)。

編寫代碼連接時使用failover策略:

String url = failover:(tcp://192.168.100.142:61616,tcp://192.168.100.142:61617,tcp://192.168.100.142:61618)?initialReconnectDelay=1000

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/69253.html

相關(guān)文章

  • ActiveMQ+ZooKeeper 集群整合

    摘要:要想保證負(fù)載均衡得再結(jié)合部署方案,配置網(wǎng)絡(luò)連接器。編碼時,端消費者通過協(xié)議來連接集群。一服務(wù)器配置集群集群保證本身的高可用性。只需使用進(jìn)行配置即可,默認(rèn)端口為。 前言 本案例使用的是真集群方式,準(zhǔn)備三臺主機(jī),IP分別為192.168.100.142、192.168.100.143、192.168.100.144 偽集群部署請看:ActiveMQ+ZooKeeper 偽集群整合如果需要了...

    xiangchaobin 評論0 收藏0
  • ActiveMQ集群整體認(rèn)識

    摘要:二集群部署方式集群的部署方式主要有下面種模式實現(xiàn)負(fù)載均衡,多個之間同步消息,已達(dá)到服務(wù)器負(fù)載的可能。默認(rèn)為,單位為毫秒,表示一次嘗試重連之間等待的時間。如果宕機(jī),集群退化成標(biāo)準(zhǔn)集群,只是了失去負(fù)載均衡能力。 前言 最終需要掌握 Replicated LevelDB Store部署方式,這種部署方式是基于ZooKeeper的。 集群分為兩種方式:1.偽集群:集群節(jié)點都搭在一臺機(jī)器上2....

    sixgo 評論0 收藏0
  • ActiveMQ單主機(jī)集群案例

    摘要:前言集群分為兩種方式偽集群集群節(jié)點都搭在一臺機(jī)器上真集群集群節(jié)點分布在多臺機(jī)器上更多詳細(xì)真集群與偽集群的區(qū)別該教程使用的是偽集群,由于在一個主機(jī)上實現(xiàn)集群,這里直接使用了模式共享文件系統(tǒng)。該教程是使用個服務(wù)實現(xiàn)集群。 前言 集群分為兩種方式:1.偽集群:集群節(jié)點都搭在一臺機(jī)器上2.真集群:集群節(jié)點分布在多臺機(jī)器上更多詳細(xì):真集群與偽集群的區(qū)別 該教程使用的是偽集群,由于在一個主機(jī)上實...

    JessYanCoding 評論0 收藏0
  • HotFrameLearning 熱門框架學(xué)習(xí)(目錄)

    摘要:熱門框架學(xué)習(xí)目錄項目介紹專輯欄目一簡介環(huán)境安裝配置客戶端連接常用命令集群搭建分布式鎖二簡介環(huán)境安裝配置基本特性啟動過程分析選舉過程主從數(shù)據(jù)同步過程分析集群搭建分布式鎖三簡介環(huán)境安裝配置基本特性基本概念和模型收發(fā)消息案例架構(gòu)初識收發(fā)消息原 HotFrameLearning 熱門框架學(xué)習(xí)(目錄) - I、項目介紹 - II、專輯欄目 一、Redis Redis 簡介 Redis 環(huán)境安裝...

    lakeside 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<