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了。

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

相关推荐
shaodong11237 小时前
鸿蒙系统-同应用跨设备数据同步(分布式功能)
分布式·华为·harmonyos
xiao-xiang10 小时前
kafka-保姆级配置说明(producer)
分布式·kafka
黄名富11 小时前
Spring Cloud — 深入了解Eureka、Ribbon及Feign
分布式·spring·spring cloud·微服务·eureka·ribbon
小丑西瓜66611 小时前
分布式简单理解
linux·redis·分布式·架构·架构演变
优人ovo11 小时前
详解分布式ID实践
分布式
Java资深爱好者12 小时前
在Spark中,如何使用DataFrame进行高效的数据处理
大数据·分布式·spark
布谷歌13 小时前
Oops! 更改field的数据类型,影响到rabbitmq消费了...(有关于Java序列化)
java·开发语言·分布式·rabbitmq·java-rabbitmq
一个假的前端男13 小时前
RabbitMQ 消息队列 优化发送邮件
分布式·rabbitmq·ruby
A尘埃13 小时前
关闭超时订单和七天自动确认收货+RabbitMQ规范
分布式·rabbitmq
2501_9032386513 小时前
深入理解 Kafka 主题分区机制
分布式·kafka·个人开发