Java资源分享网 - 专业的Java学习网站 学Java,上Java资源分享网
RabbitMQ集群搭建指南:提升企业消息系统的效能与稳定性 PDF 下载
发布于:2024-03-06 09:22:10
(假如点击没反应,多刷新两次就OK!)

RabbitMQ集群搭建指南:提升企业消息系统的效能与稳定性  PDF 下载 图1

 

 

资料内容:

1.RabbitMQ集群搭建

一般来说,如果只是为了学习RabbitMQ或者验证业务工程的正确性那么在本地环境或者测试环境

上使用其单实例部署就可以了,但是出于MQ中间件本身的可靠性、并发性、吞吐量和消息堆积能

力等问题的考虑,在生产环境上一般都会考虑使用RabbitMQ的集群方案。

1.1 集群方案的原理

RabbitMQ这款消息队列中间件产品本身是基于Erlang编写,Erlang语言天生具备分布式特性(通

过同步Erlang集群各节点的cookie来实现)。RabbitMQ本身不需要像ActiveMQ、Kafka那样通

过ZooKeeper分别来实现HA方案和保存集群的元数据。

 

1.2 如下案例中使用多台云服务器进行集群搭建

主要参考官方文档:https://www.rabbitmq.com/clustering.html

首先确保RabbitMQ运行没有问题

1 #修改hostname

2 vim /etc/hostname

3 m1

4 m2

5 #修改hosts集群设备

6 vim /etc/hosts

7 192.168.132.137 m1

8 192.168.132.139 m2

9

10 #开放防火墙 4369/5672/15672/25672端口

11 firewall‐cmd ‐‐zone=public ‐‐add‐port=4369/tcp ‐‐permanent

12 firewall‐cmd ‐‐zone=public ‐‐add‐port=5672/tcp ‐‐permanent13 firewall‐cmd ‐‐zone=public ‐‐add‐port=15672/tcp ‐‐permanent

14 firewall‐cmd ‐‐zone=public ‐‐add‐port=25672/tcp ‐‐permanent

15

16 #重载防火墙

17 firewall‐cmd ‐‐reload

18

19 #重启服务器

20 reboot

21

22 #同步.erlang.coolie

23 find / ‐name *.cookie

24

25 #将文件发送至指定ip的服务器中,发送的过程中需要指定另一台服务器的密码信息

26 scp /var/lib/rabbitmq/.erlang.cookie 192.168.132.134:/var/lib/rabbitmq/

27

28 #两个电脑启动MQ服务

29 rabbit‐server

30

31

32 # 停止应用 通过rabbitmqctl status 可以查看当前rabbitmactl默认操作的节点信息

33 rabbitmqctl stop_app

34

35 # 将当前节点加入到一个集群中 默认磁盘节点被加入的节点只要是集群中的一员,其他节点都能

够马上感受到集群节点的变化

36 rabbitmqctl join_cluster rabbit@m1

37

38 # 重新启动当前节点

39 rabbitmqctl start_app

40

41 #查看集群信息

42 rabbitmqctl cluster_status