1

我试图了解我的 Heroku 托管后端上的 Web-Dynos、Worker-Dynos 和 RabbitMQ 之间发生了什么。

我注意到我有超过 10 个到 RabbitMQ 的连接,尽管到目前为止我使用的是一个 Web-Dyno 和一个 Woker-Dyno。我正在使用 greenthreads (eventlet) 并希望每个 Web- 或 Worker-Dyno 有一个连接。

这是我的工人从 Procfile 开始的: celery -E -A proj worker -B -l info --maxtasksperchild=1000

就我而言,我可以有超过 10 个打开的连接: 在此处输入图像描述

这也是我的队列列表(celery似乎用于排队任务,不太确定其他两个是做什么用的): 在此处输入图像描述

我试过玩,BROKER_POOL_LIMIT它似乎没有帮助。现在BROKER_POOL_LIMIT = 1,连接数为 10。

这可能是由 eventlet 而不是通常的 gunicorn-workers 引起的吗?

4

0 回答 0