模式: 多Master多Slave模式,異步複製;java
每一個 Master 配置一個 Slave,有多對Master-Slave,HA 採用異步複製方式,主備有短暫消息延遲,毫秒級。api
優勢:即便磁盤損壞,消息丟失的很是少,且消息實時性不會受影響,由於 Master 宕機後,消費者仍然能夠從 Slave 消費,此過程對應用透明。不須要人工干預。性能同多 Master 模式幾乎同樣。網絡
缺點:Master 宕機,磁盤損壞狀況,會丟失少許消息。異步
RocketMQ 網絡部署圖:async
環境準備:CentOS_6.5_x64tcp
IP 主機名 功能分佈式
172.17.34.150 LCB-T-rocketmq_nameserver nameserver性能
172.17.34.151 rocketmq_master01 master01url
172.17.34.152 rocketmq_slave01 slave01 日誌
172.17.34.153 rocketmq_master02 master02
172.17.34.154 rocketmq_slave02 slave02
1、安裝jdk,配置環境變量
2、安裝rocketmq
# tar -zxf alibaba-rocketmq-3.2.6.tar.gz -C /usr/local/
# cd /usr/local/
# ln -s /usr/local/alibaba-rocketmq /usr/local/rocketmq
# cd rocketmq/
3、啓動路徑/usr/local/rocketmq
一、先啓動 NameServer,機器 IP 爲:172.17.34.150:9876
受權:chmod a+x bin/mqnamesrv
啓動:nohup ./bin/mqnamesrv >/var/log/ns.log &
查看日誌:tailf /var/log/ns.log
二、啓動 Master01
cd /usr/local/rocketmq
chmod a+x bin/mqbroker
nohup ./bin/mqbroker -n 172.17.34.150:9876 -c ./conf/2m-2s-async/broker-a.properties >/var/log/mq.log &
tailf /var/log/ns.log
三、啓動Master02
chmod a+x bin/mqbroker
nohup ./bin/mqbroker -n 172.17.34.150:9876 -c ./conf/2m-2s-async/broker-a.properties >/var/log/mq.log &
tailf /var/log/mq.log
四、啓動 Slave01
chmod a+x bin/mqbroker
nohup ./bin/mqbroker -n 172.17.34.150:9876 -c ./conf/2m-2s-async/broker-a-s.properties >/var/log/mq.log &
tailf /var/log/mq.log
五、啓動 Slave02
chmod a+x bin/mqbroker
nohup ./bin/mqbroker -n 172.17.34.150:9876 -c ./conf/2m-2s-async/broker-b-s.properties >/var/log/mq.log &
tailf /var/log/mq.log
4、查看啓動端口
#netstat -tunpl |grep 9876
tcp 0 0 :::9876 :::* LISTEN 1303/java
5、關閉nameserver或broker
#sh ./mqshutdown
Useage: mqshutdown broker | namesrv
#sh mqshutdown broker
#sh mqshutdown namesrv