模式: 多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