RabbitMQ集群安装rabbitmq_delayed_message_exchange

1、单节点安装rabbitmq安装延迟队列

安装延迟队列rabbitmq_delayed_message_exchange可以参考这个文章: rabbitmq安装延迟队列-CSDN博客

2、集群安装rabbitmq_delayed_message_exchange

在第二个节点join_cluster 之后,start_app 就会报错了

javascript 复制代码
(CaseClauseError) no case clause matching: {:error, {:timeout_waiting_for_tables, [:rabbit@mq2, :rabbit@mq1], [:rabbit_delayed_messagerabbit@mq1, :rabbit_delayed_messagerabbit@mq1_index]}} 
(rabbitmqctl 3.8.0-dev) lib/rabbitmq/cli/plugins/plugins_helpers.ex:107: 
RabbitMQ.CLI.Plugins.Helpers.update_enabled_plugins/4 
(rabbitmqctl 3.8.0-dev) lib/rabbitmq/cli/plugins/commands/enable_command.ex:121: anonymous fn/6 in RabbitMQ.CLI.Plugins.Commands.EnableCommand.do_run/2
 (elixir 1.10.4) lib/stream.ex:1325: anonymous fn/2 in Stream.iterate/2 
(elixir 1.10.4) lib/stream.ex:1538: Stream.do_unfold/4 
(elixir 1.10.4) lib/stream.ex:1609: Enumerable.Stream.do_each/4 
(elixir 1.10.4) lib/stream.ex:956: Stream.do_enum_transform/7 
(elixir 1.10.4) lib/stream.ex:1609: Enumerable.Stream.do_each/4 
(elixir 1.10.4) lib/enum.ex:2161: Enum.reduce_while/3 {:case_clause, {:error, {:timeout_waiting_for_tables, [:rabbit@mq2, :rabbit@mq1], [:rabbit_delayed_messagerabbit@mq1, :rabbit_delayed_messagerabbit@mq1_index]}}}

找了很多资料最后发现原因是:rabbitmq_delayed_message_exchange插件需要用disc类型,集群的所有节点都需要改成disc类型

bash 复制代码
#将node2加入node1时,指定node2为内存节点(node2默认加入之后默认是ram节点)
rabbitmqctl join_cluster rabbit@node1 --ram
#若集群已搭建好,可以切换节点类型
rabbitmqctl change_cluster_node_type disc

第二个节点修改成 disc 节点之后,就可以start_app了。

生活中总是充满了各种选择,点餐纠结,出行选择,聚餐座位,团队投票结果不明,随机抽签一锤定音等等!为了解决这个问题,我开发了一款【随机选择决定转盘工具】微信小程序,随机做出决策!无论是随机抽选还是投硬币,都能轻松搞定。现在通过微信小程序二维码就能体验!快来试试吧,让选择变得更简单!

相关推荐
赫尔·普莱蒂科萨·帕塔7 小时前
DeepMind 分布式 AGI 安全框架与拼凑型 AI 群技术深度分析
分布式·安全·agi
Vic101017 小时前
Redis防重复点击与分布式锁
java·数据库·redis·分布式
Vic101017 小时前
Redis防重复点击与分布式锁实现方案对比笔记
java·redis·笔记·分布式
物流可信数据空间8 小时前
可信数据空间与区块链技术的结合点有哪些?
分布式·架构·区块链
Wang's Blog8 小时前
Kafka: Streams核心概念解析之KStream与KTable及实时WordCount实现
分布式·kafka
爱学大树锯8 小时前
【Zookeeper分布式锁:从原理到实战】
分布式·zookeeper·云原生
LDG_AGI9 小时前
【推荐系统】深度学习训练框架(二十):Meta Device — 延迟初始化,零显存定义超大规模模型
人工智能·pytorch·分布式·深度学习·机器学习·语言模型
武子康9 小时前
Java-210 Spring AMQP 整合 RabbitMQ:JavaConfig 注解配置、RabbitTemplate 发送/同步接收与坑位速查
xml·java·spring·消息队列·rabbitmq·java-rabbitmq·mq
Wang's Blog9 小时前
RabbitMQ: 集群深度优化:容器化高可用、网络分区处理与状态监控
网络·分布式·rabbitmq
Wang's Blog9 小时前
Kafka: 集群部署与副本机制深度解析之从伪集群搭建到生产环境实践
分布式·kafka