最近在研究rabbitmq的各个工作模式时。
出现了一个rabbitmq java.util.concurrent.TimeoutException异常
java.util.concurrent.TimeoutExceptionat com.rabbitmq.utility.BlockingCell.get(BlockingCell.java:77)at com.rabbitmq.utility.BlockingCell.uninterruptibleGet(BlockingCell.java:111)at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:37)at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:367)at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:293)at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:36)at com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:84)at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:613)at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:648)
当时正在测rabbitmq得Topic工作模式,使用routing占位符匹配队列进行发消息下。一开始时看rabbitmq上得队列并没有收到routing占位符匹配发送的消息,然后检查代码,确定占位符等代码无误后看此异常,确定是连接问题导致的,这是因为rabbitmq因非正常原因关闭,导致的连接异常,后进行rabbitmq重启,idea以管理员方式运行重启,再调试后就没有这个问题了。