Python 2.7 从远程vm使用python和pika在RabbitMQ上握手超时

Python 2.7 从远程vm使用python和pika在RabbitMQ上握手超时,python-2.7,timeout,rabbitmq,handshake,pika,Python 2.7,Timeout,Rabbitmq,Handshake,Pika,我在世界各地有几个虚拟机,它们都是相同的,并且使用相同的python代码(以及相同的pika 0.9.13库版本)。由于握手超时,其中只有一个失败: =ERROR REPORT==== 17-Jun-2015::12:27:07 === closing AMQP connection <0.290.0> (YY.YY.YY.YY:47232 -> XX.XX.XX.XX:5672): {handshake_timeout,handshake} =错误报告===2015年6月1

我在世界各地有几个虚拟机,它们都是相同的,并且使用相同的python代码(以及相同的pika 0.9.13库版本)。由于握手超时,其中只有一个失败:

=ERROR REPORT==== 17-Jun-2015::12:27:07 ===
closing AMQP connection <0.290.0> (YY.YY.YY.YY:47232 -> XX.XX.XX.XX:5672):
{handshake_timeout,handshake}
=错误报告===2015年6月17日::12:27:07===
关闭AMQP连接(YY.YY.YY.YY:47232->XX.XX.XX.XX:5672):
{握手\超时,握手}
这是从rabbitMQ日志中获取的,在客户端代码中,我看到如下内容

ERROR:pika.adapters.base_connection:Connection to XX.XX.XX.XX:5672 failed: timeout
Unhandled exception in thread started by <function listen_for_start_download_message at 0x1e5bcf8>
错误:pika.adapters.base\u连接:连接到XX.XX.XX.XX:5672失败:超时
由启动的线程中存在未处理的异常
我已按照本指南测试了与telnet的连接:


我已经将握手超时增加到40000毫秒,将ssl握手超时增加到20000毫秒,并且错误仍然存在,从该机器到rabbitmq服务器的ping比其他机器稍微高一点,但没有异常(136ms)。是否有人在某个时候发现了类似的问题,或者有人能推荐另一种方法来测试rabbitMQ连接?

我真的不确定这是否是解决此问题的方法,但在我的案例中,问题是通过在有问题的vm上安装这些库来解决的:amqp工具和librabbitmq1仅使用apt get安装。我不知道为什么其他虚拟机有这些库,而有问题的虚拟机没有,但事实就是如此。

我建议您尝试pika的替代库,或者至少升级到pika 0.9.14。皮卡现在有点像外卡。我试过最新的版本,但还是得到了同样的结果。我将尝试使用py-amqp或py-amqplib,因为我想不出其他任何东西。我非常确定它与此设置相关。在修复另一个pika问题时,我遇到了类似的问题。顺便说一句,你也可以试试我的amqp库=]你把它们安装在兔子身上了吗?在客户端计算机上?