gpt4 book ai didi

python - Rabbitmq mgmt 上显示未知队列名称。使用 celery 时

转载 作者:太空狗 更新时间:2023-10-29 21:01:11 29 4
gpt4 key购买 nike

我只创建了下表中 Rabbitmq 管理 Webui 中显示的最后 2 个队列名称:

enter image description here

表的其余部分有类似哈希的队列,我不知道:

1- Who created them? (I know it is celery, but which process, task,etc.)

2- Why they are created, and what they are created for?.

我注意到,当推送的消息数量增加时,那些类似哈希的消息的数量也会增加。

最佳答案

当使用celery时,Rabbitmq被用作默认的结果后端,同时也用于存储失败的错误信息任务(引发异常)。

每个新任务都会在服务器上创建一个新队列,其中包含数千个任务代理可能因队列而重载,这会影响性能以消极的方式。

Rabbit 中的每个队列都是一个独立的 Erlang 进程,所以如果你打算同时保留许多结果,您可能必须增加 Erlang进程限制,以及操作系统的最大文件描述符数允许。

不会自动清除旧结果,所以我们必须告诉兔子这样做。

下面的 session 。线路决定了温度的生存时间队列。默认为 1 天

CELERY_AMQP_TASK_RESULT_EXPIRES = Number of seconds

或者,我们可以完全改变后端存储,而不是在 Rabbit 中。

CELERY_BACKEND = "amqp"

我们也可以忽略它:

CELERY_IGNORE_RESULT = True.

另外,在忽略结果的时候,我们也可以把错误保存起来,以备后用,这意味着失败的任务多了一个队列。

CELERY_STORE_ERRORS_EVEN_IF_IGNORED = True.

我不会将此问题标记为已回答,等待更好的答案。

引用:

  • SO链接
  • celery 文档
  • Rabbitmq 文档

关于python - Rabbitmq mgmt 上显示未知队列名称。使用 celery 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20442580/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com