【问题标题】:Celery asynchronous in django does not workDjango中的芹菜异步不起作用
【发布时间】:2020-12-09 02:01:24
【问题描述】:

我正在尝试使用 celery 创建一个异步任务,但没有成功。

我有一个发送电子邮件的任务:

@shared_task()
def send_email_example(email_id):
     ...

我使用delay() 方法调用它:

class SomeModelExample:
    ...
    
    def example(self):
        ...
        send_email_example.delay(self.id)

在本地,我运行芹菜并且可以使用它。但是,在我的服务器中,当我使用调用该函数的方法时,它需要 30 多秒,并且我收到状态码 502。

我希望我的 celery 设置没问题,因为我的 periodc 任务有效。

解决方案

自己测试发现芹菜真的没问题。问题在于我在服务器上的测试。

【问题讨论】:

  • 示例函数中是否有其他代码可能需要超过 30 秒,因为延迟应该不是问题

标签: django celery


【解决方案1】:

在这个阶段我会尝试:

  1. 使用不带括号的装饰器:@shared_task
  2. 将服务器上的 harakiri 时间增加到 >60 秒,以查看是任务问题还是服务器问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-29
    • 2019-10-05
    • 2023-02-13
    • 2015-06-01
    • 2016-04-24
    • 1970-01-01
    • 2014-10-10
    • 1970-01-01
    相关资源
    最近更新 更多