django celery

Django与Celery集成
本文介绍了如何在Django项目中集成Celery实现异步任务处理及定时任务调度,包括配置设置、任务定义与启动步骤。

参考文献

要求python 

     django 

     django-celery

     celery

实现

setting.py:

    import djcelery
    djcelery.setup_loader()
    BROKER_URL = 'django://'
    ...
    INSTALLED_APPS = (
       ...
       'djcelery',
       'kombu.transport.django',
       ...
    )
    # 以下的事为了定时任务使用
   from datetime import timedelta

   CELERYBEAT_SCHEDULE = {
     'add-every-1-minutes': {
        'task': 'core.tasks.crowd_engine',
        'schedule': timedelta(minutes=1),
    },
    }

tasks.py

    from celery import task    @task()
    def add(x, y):
        return x + y

启动  先启动项目: python manage.py runserver(实践证明 不启动也是没有干系的 应为是单独的服务器嘛)

        在启动worker :(异步任务使用)

export C_FORCE_ROOT="true"(先执行这步,在去启动worker)

python manage.py celery worker --loglevel=info

在启动定期任务:(定期任务是 定时给worker分配任务,所以说定期任务是要在启动异步任务的前提下才能使用)

python manage.py celery beat

总结:

celery 和Django的信号的区别

celery的异步的,信号是同步的


转载于:https://my.oschina.net/u/1000190/blog/546318

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值