Rabbitmq达到文件描述符限制会导致客户端无限期挂起

时间:2015-02-02 16:21:05

标签: python rabbitmq file-descriptor pika kombu

在遇到我的rabbitmq服务器达到其文件描述符限制并且不再接受任何新连接的问题后,我注意到我的客户端从队列中消耗了 非常 不受欢迎的方式。

当试图打开他们的连接时,他们无限期地挂起而没有丢失任何错误。

我目前正在使用Kombu库,并且在重新创建问题时,不会调整连接参数的数量会阻止连接实例化无限期地阻塞。超时不会触发,启用心跳也无济于事。查看strace我看到它打开了与rabbitmq服务器的连接,然后永远等待数据。

我也尝试过使用Pika库并遇到同样的问题。区别在于strace显示正在轮询的连接。然而,连接实例化仍然无限期地阻塞。

有什么我想念的吗?打开与rabbitmq服务器的连接的正确方法是什么,如果出现问题,它们会永远无声地挂起?

编辑:

这是一些代码,它几乎是你好世界..

鼠兔:

import pika
connection = pika.BlockingConnection(pika.ConnectionParameters(
               'localhost', socket_timeout=2, heartbeat_interval=1))
channel = connection.channel()  # Hangs indefinitely

海带:

import kombu
connection = kombu.Connection('amqp://guest:guest@localhost:5672//')
connection.connect()  # Hangs indefinitely

0 个答案:

没有答案