RabbitMQ实现延迟消息(rabbitmq_delayed_message_exchange)

单节点的rabbitmq只需要安装一次,rabbitmq集群需要在每个集群节点上操作

另外,节点类型是ram的无法安装,必须使用disc节点类型的

修改节点类型

rabbitmqctl stop_app
rabbitmqctl change_cluster_node_type disc
rabbitmqctl start_app

# rabbitmqctl change_cluster_node_type {disc,ram}

# rabbitmqctl cluster_status 查看节点类型

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

节点类似是ram的安装该插件报错提示:

1.检查你的RabbitMQ版本与插件兼容是否一致

https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases

rabbitmq:3.8.3-management  => rabbitmq_delayed_message_exchange-3.8.0.ez

rabbitmq:3.8.10-management => rabbitmq_delayed_message_exchange-3.8.9-0199d11c.ez

rabbitmq:3.9.11-management => rabbitmq_delayed_message_exchange-3.9.0.ez

找到匹配的插件版本后下载

2.在Docker环境下,安装延迟消息插件
进入容器找到plugins目录

> docker exec -it rabbitmq bash
## 可以看到,plugins就是存放 mq 插件的地方了
> ls 

将插件复制到plugins目录下

> cd /usr/etc/rabbitmq_plugins
> docker cp rabbitmq_delayed_message_exchange-3.8.9-0199d11c.ez rabbit:/plugins

回到plugins目录,查看plugins中是否有rabbitmq_delayed_message_exchange插件

激活插件

> rabbitmq-plugins enable rabbitmq_delayed_message_exchange

查看插件

root@my-rabbit:/plugins# rabbitmq-plugins list
Listing plugins with pattern ".*" ...
 Configured: E = explicitly enabled; e = implicitly enabled
 | Status: * = running on rabbit@my-rabbit
 |/
[  ] rabbitmq_amqp1_0                  3.8.10
[  ] rabbitmq_auth_backend_cache       3.8.10
[  ] rabbitmq_auth_backend_http        3.8.10
[  ] rabbitmq_auth_backend_ldap        3.8.10
[  ] rabbitmq_auth_backend_oauth2      3.8.10
[  ] rabbitmq_auth_mechanism_ssl       3.8.10
[  ] rabbitmq_consistent_hash_exchange 3.8.10
[E*] rabbitmq_delayed_message_exchange 3.8.9.0199d11c
[  ] rabbitmq_event_exchange           3.8.10
[  ] rabbitmq_federation               3.8.10

重启RabbitMQ (不用重启也能生效)

> docker restart rabbitmq

进入RabbitMQ管理界面查看插件是否成功生效

posted @   哈喽哈喽111111  阅读(561)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2020-03-20 启动elasticsearch报错解决
点击右上角即可分享
微信分享提示