报错如下:
ShutdownSignalException: connection error; protocol method:#method<connection.close>(reply-code=503, reply-text=COMMAND_INVALID - unknown exchange type 'x-delayed-message', class-id=40, method-id=10)
表示没有找到对应x-delayed-message的exchange type ,缺少插件
解决办法:
注意:在rabbitmq 3.5.7及以上的版本提供了一个插件(rabbitmq-delayed-message-exchange)来实现延迟队列功能。同时插件依赖Erlang/OPT 18.0及以上。
插件下载地址:https://www.rabbitmq.com/community-plugins.html
下载下来之后将插件复制到rabbit-service的插件目录(自己的安装目录)中
然后开启插件服务:
rabbitmq-plugins enable rabbitmq_delayed_message_exchange
关闭插件
rabbitmq-plugins disable rabbitmq_delayed_message_exchange
重启服务就没有报错了。