RabbitMQ消费服务关掉时会删除exchange,导致生成服务发布内容失败

生产环境有段时间打印了如下错误

com.rabbitmq.client.AlreadyClosedException: channel is already closed due to channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no exchange 'TEMPORARY.SYSTEM.LOGIN.LOGGING' in vhost '/', class-id=60, method-id=40)
    at com.rabbitmq.client.impl.AMQChannel.ensureIsOpen(AMQChannel.java:209)
    at com.rabbitmq.client.impl.AMQChannel.transmit(AMQChannel.java:338)
    at com.rabbitmq.client.impl.ChannelN.basicPublish(ChannelN.java:686)
    at com.rabbitmq.client.impl.ChannelN.basicPublish(ChannelN.java:668)
    at com.rabbitmq.client.impl.ChannelN.basicPublish(ChannelN.java:658)
    at com.rabbitmq.client.impl.recovery.AutorecoveringChannel.basicPublish(AutorecoveringChannel.java:192)

经过测试,发现出现错误的时间点刚好是消费服务关了,消费服务关闭时会删除exchange。

posted @ 2020-03-28 16:11  junge8618  阅读(1891)  评论(0编辑  收藏  举报