Django RabbitMQ不使用芹菜关闭旧连接

Django RabbitMQ不使用芹菜关闭旧连接,django,rabbitmq,celery,Django,Rabbitmq,Celery,我将芹菜与Django一起使用,从几个数据中心的约20名工作人员处将任务消费/发布到RabbitMQ。大约一个月后,我就有了8000个开放式套接字描述符,这个数量一直在增加,直到我重新启动RabbitMQ。我经常“杀死-9”芹菜工人进程,而不是关闭它们,因为我不想等待作业完成。在workers上,我看不到RabbitMQ显示的连接。有没有办法从RabbitMQ中清除旧连接 我正在使用芹菜3.1.13和RabbitMQ 3.2.4,它们都在Ubuntu 14.04上。我使用的不是librabbit

我将芹菜与Django一起使用,从几个数据中心的约20名工作人员处将任务消费/发布到RabbitMQ。大约一个月后,我就有了8000个开放式套接字描述符,这个数量一直在增加,直到我重新启动RabbitMQ。我经常“杀死-9”芹菜工人进程,而不是关闭它们,因为我不想等待作业完成。在workers上,我看不到RabbitMQ显示的连接。有没有办法从RabbitMQ中清除旧连接


我正在使用芹菜3.1.13和RabbitMQ 3.2.4,它们都在Ubuntu 14.04上。我使用的不是librabbitmq,而是pyamqp。

我在以下三机设置中遇到了同样的问题:

工人(Ubuntu 14.04)

Django应用服务器(Ubuntu 14.04)

Rabbit MQ服务器(Ubuntu 14.04 | rabbitmq服务器3.2.4)


工作人员收到的每个任务都会打开一个从未关闭过的连接(根据RabbitMQ日志),并消耗约2-3 MB内存

此后,我在Django服务器上将芹菜升级到最新版本,套接字描述符和内存使用保持稳定

我还看到任务完成后RabbitMQ日志中的连接关闭,如下所示:

closing AMQP connection <0.12345.0> (192.168.1.100:54321 -> 192.168.1.100:5672):
connection_closed_abruptly
关闭AMQP连接(192.168.1.100:54321->192.168.1.100:5672):
连接突然关闭

在Django的
settings.py
文件中使用
BROKER\u HEARTBEAT

RabbitMQ期望客户机提供此值(本例中为芹菜)

指 更多细节

amqp==1.4.2
celery==3.1.8
kombu==3.0.10
closing AMQP connection <0.12345.0> (192.168.1.100:54321 -> 192.168.1.100:5672):
connection_closed_abruptly