声明交换机为延迟时报异常( unknown exchange type 'x-delayed-message')的解决方法

服务端需下载安装插件:

1.下载插件包

rabbitmq使用延迟时报异常

2.将下载后的插件包移至服务安装目录下

rpm -ql rabbitmq-server查询安装位置
将下载的ez结尾的文件移至/plugins/目录下

3.启动插件

        [root@localhost plugins]# rabbitmq-plugins enable rabbitmq_delayed_message_exchange
        [root@localhost plugins]# systemctl restart rabbitmq-server.service

4.消息发送时添加head

        rabbitTemplate.convertAndSend("test_publish_exchange",routingKey,content,new MessagePostProcessor() {
                    @Override
                    public Message postProcessMessage(Message message) throws AmqpException {
                        //设置消息持久化
                        //message.getMessageProperties().setDeliveryMode(MessageDeliveryMode.PERSISTENT);
                        //message.getMessageProperties().setHeader("x-delay", "6000");
                        message.getMessageProperties().setDelay(6000);
                        return message;
                    }
                });

 

相关文章:

  • 2021-09-02
  • 2021-12-11
  • 2022-01-24
  • 2022-12-23
  • 2022-12-23
  • 2021-07-26
猜你喜欢
  • 2022-01-13
  • 2022-12-23
  • 2021-10-16
  • 2021-10-15
相关资源
相似解决方案