java.util.concurrent.TimeoutException at 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)
解決辦法:html
該測試的broker使用了一臺,沒有主備,因此在/etc/hosts下沒有配置IP和域名的對應關係。所以致使producer調用api登錄broker有時候比較耗時。java
參考broker上IP和hostname配置說明:api
http://www.rabbitmq.com/clustering.html測試
http://docs.celeryproject.org/en/latest/getting-started/brokers/rabbitmq.htmlspa