成都创新互联网站制作重庆分公司

Django-celery安装及使用测试-创新互联

Celery为Django提供后台执行以及定时执行功能。

创新互联主营双鸭山网站建设的网络公司,主营网站建设方案,成都App定制开发,双鸭山h5重庆小程序开发公司搭建,双鸭山网站营销推广欢迎双鸭山等地区企业咨询

一、安装:

1、安装依懒包:

tar xvf kombu-3.0.35.tar.gz 
cd kombu-3.0.35
/usr/local/python27/bin/python setup.py install
tar xvf billiard-3.3.0.23.tar.gz
cd billiard-3.3.0.23
/usr/local/python27/bin/python setup.py install

2、安装django-celery:

tar xvf django-celery-3.1.17.tar.gz
cd django-celery-3.1.17
/usr/local/python27/bin/python setup.py install

二、配置整合Django:

settings 添加配置:

import djcelery

djcelery.setup_loader()
BROKER_URL = 'django://'
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'

installed_apps添加djcelery,kombu.transport.django

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'DjangoUeditor',
    'django_jinja',
    'djcelery',
    'kombu.transport.django',
    'TestCelery',
)

三、创建task

新建App:TestCelery,在该App下新建tasks.py文件:

from celery import task

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

四、启动进程

在manage.py中加入:

import django
django.setup()

不加的话celery执行task时会报错

python manage.py celery worker --loglevel=info

五、测试:

python manage.py shell    
>>> from myapp.tasks import add    
>>> add.delay(2, 2)

六、测试定时任务:

启动celerybeat:

python manage.py celery beat

在django admin后台添中任务:

Django-celery 安装及使用测试

Name: 这一定期任务的注册名

Task (registered): 可以选择所有已经注册的task之一, 例如前面的add function

Task (custom): task的全名, 例如myapp.tasks.add, 但最好还是用以上项

Enabled: 是否开启这一定期任务

Interval: 定期任务的间隔时间, 例如每隔5分钟

Crontab: 如果希望task在某一特定时间运行, 则使用Unix中的Crontab代替interval

Arguments: 用于传参数到task中

Execution Options: 更高级的设置, 在此不详细说明, 请查看celery官方文档

celerybeat会把task发送到celery worker 中执行

暂时测试到这里!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文题目:Django-celery安装及使用测试-创新互联
本文路径:http://cxhlcq.com/article/hdiho.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部