【问题标题】:How to set auto_delete=False for all new queues in Celery?如何为 Celery 中的所有新队列设置 auto_delete=False?
【发布时间】:2023-03-08 16:52:01
【问题描述】:

如何将 Celery 使用 AMQP 的所有新创建队列的 auto_delete 的默认值设置为 False?我使用默认设置。所以默认的“celery”交换是 auto_delete = False。添加这样的任务

result = client.send_task('abc')

导致队列中 auto_delete = True。

【问题讨论】:

    标签: python rabbitmq celery amqp celery-task


    【解决方案1】:

    声明一个队列、交换或绑定有点像 Erlang 中的“单一赋值”, 如果你用 auto_delete=False 声明过一次,那么你以后不能声明 它是 auto_delete=True。要更改定义,您必须先将其删除。

    还要注意 Exchange.auto_delete 已被弃用,因为它不能很好地工作, 而且它librabbitmq 不支持

    来源:Celery User Group

    【讨论】:

    • 问题是询问如何更改 celery 的默认设置,而不是如何更改现有交换。
    猜你喜欢
    • 2018-12-27
    • 2012-07-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2020-04-19
    • 1970-01-01
    • 2014-12-27
    • 2021-07-31
    相关资源
    最近更新 更多