网站首页 > 精选文章 / 正文
rabbitmq 4种集群模式
主备模式
实现RabbitMQ的多个节点中实现高可用集群,一般在并发和数据量不高的情况下,这种模型非常的好用且简单。主备模式也称之为Warren(兔子窝)模式
特点:主节点提供读写,备用节点不提供任何读写的,只用来实现当主节点宕机的情况下能顶上去。(主从模式:主节点提供读写,从节点只读。)
可通过haproxy来配置
listen rabbitmq_cluster
bind 0.0.0.0:5672 # 配置TCP模式
mode tcp #简单的轮询
balance roundrobin # 主节点
server bhz76 192.168.11.76:5672 check inter 5000 rise 2 fall 2
server bhz76 192.168.11.77:5672 backup check inter 5000 rise 2 fall 2 # 备用节点
#备注:rabbitmq集群节点配置 #inter每隔5秒对mq集群做健康检查,2次正确证明服务器可用,2次失败证明服务器不可用,并且配置主备机制
远程模式
远程模式是可以实现双活的一种模式,简称Shovel模式,所谓Shovel就是我们可以把消息进行不同数据中心的复制工作,我们可以跨地域的让两个mq集群互联
远距离通信和复制,所谓Shovel就是 我们可以把消息进行不同数据中心的复制工作,我们可以跨地域的让两个mq集群互联。
Shovel集群的配置,首先启动Rabbitmq插件,命令如下:
rabbitmq-plugins enable amqp_client
rabbitmq-plugins enable amqp_shovel
#然后可通过console来配置
镜像模式
集群模式非常经典的就是Mirror镜像模式,保证100%数据不丢失,在实际工作中也是用的最多的。并且实现集群非常的简单,一般互联网大厂都会构建这种镜像集群模式。
Mirror镜像队列:目的是为了保证rabbitmq数据的高可靠性解决方案,主要就是实现数据的同步,一般来讲是2-3个节点实现数据同步(对于100%数据可靠性解决方案一般是3节点),集群架构如下:
镜像配置:
多活模式
这种模式也是实现异地数据复制的主流模式,因为Shovel模式配置比较复杂,所以一般来说实现异地集群都是使用这种双活或者多活模式来去实现的。这种模型需要依赖Rabbitmq的federation插件,可以实现持续的可靠的AMQP数据通信,多活模式在实际配置与应用非常简单。
RabbitMQ部署架构采用双中心模式(多中心),那么在两套(或多套)数据中心各部署一套RabbitMQ集群,各个中心的RabbitMQ服务除了需要为业务提供正常的消息服务外,中心之间还需要实现部分队列消息共享。可以避免一个集群挂掉,整个系统就挂掉了
Tags:rabbitmq配置
猜你喜欢
- 2024-12-28 用rabbitmq实现消息重发的功能 rabbitmq查看消息内容
- 2024-12-28 秃头大牛一文竟然就把SpringCloudStream(SCS)给讲明白了?
- 2024-12-28 详细介绍一下RabbitMQ的消息持久化机制?
- 2024-12-28 SpringBoot整合RabbitMQ实现消息的发送和接收操作?
- 2024-12-28 RabbitMQ持久化机制、内存磁盘控制
- 2024-12-28 在Spring Boot中如何基于RabbitMQ实现流量削峰?
- 2024-12-28 Spring Boot中如何通过RabbitMQ接收秒杀流量
- 2024-12-28 「MQ中间件」 RabbitMQ死信队列及内存监控
- 2024-12-28 RabbitMQ 巧解消息积压难题 rabbitmq消息堆积处理
- 2024-12-28 RabbitMQ基础(消息补偿机制) rabbitmq消息积压如何解决