Django-celery 安装及使用测试

简介:

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


一、安装:

1、安装依懒包:

1
2
3
tar  xvf kombu-3.0.35. tar .gz 
cd  kombu-3.0.35
/usr/local/python27/bin/python  setup.py  install
1
2
3
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:

1
2
3
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 添加配置:

1
2
3
4
5
import  djcelery
 
djcelery.setup_loader()
BROKER_URL =  'django://'
CELERYBEAT_SCHEDULER =  'djcelery.schedulers.DatabaseScheduler'

installed_apps添加djcelery,kombu.transport.django

1
2
3
4
5
6
7
8
9
10
11
12
13
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文件:

1
2
3
4
5
from  celery  import  task
 
@task ()
def  add(x, y):
     return  +  y


四、启动进程

在manage.py中加入:

1
2
import  django
django.setup()

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

1
python manage.py celery worker --loglevel=info


五、测试:

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


六、测试定时任务:

启动celerybeat:

1
python manage.py celery beat


在django admin后台添中任务:

wKioL1c1uZeCtV6jAABEmCF2xL8908.png

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 中执行


暂时测试到这里!

本文转自运维笔记博客51CTO博客,原文链接http://blog.51cto.com/lihuipeng/1773158如需转载请自行联系原作者


lihuipeng

相关文章
|
3月前
|
C++
jrtplib开源库系列之一:jrtplib介绍、安装和测试(window 10环境介绍)
关于jrtplib库网上已经有很多介绍,而且目前jrtplib作者已经停止更新(Apr 18, 2020),最新版本为v3.11.2。本系列内容也以该版本进行介绍。 相信你已经对RTP/RTCP协议有一定的了解,并想更深入的了解RTP协议的具体实现,jrtplib就是使用使用C++实现的RTP/RTCP协议。具体标准为RFC3550,如果想仔细阅读原文,但是对英文又有点吃力,可以参考我的博客RTP/RTCP中英文对照,在博客的后面有百度链接,是对RFC3550的中文翻译,可能很多地方不太准确,有些内容是自己添加进去的,希望不会影响你的阅读。
34 0
|
4天前
|
分布式计算 Hadoop Scala
Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
【4月更文挑战第13天】Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
8 0
|
1月前
|
消息中间件 Kafka Linux
Kafka【付诸实践 03】Offset Explorer Kafka 的终极 UI 工具安装+简单上手+关键特性测试(一篇学会使用 Offset Explorer)
【2月更文挑战第21天】Kafka【付诸实践 03】Offset Explorer Kafka 的终极 UI 工具安装+简单上手+关键特性测试(一篇学会使用 Offset Explorer)
189 2
|
3月前
|
测试技术 API 芯片
阿萨聊测试:如何在Mac 电脑上安装Postman?
阿萨聊测试:如何在Mac 电脑上安装Postman?
139 0
阿萨聊测试:如何在Mac 电脑上安装Postman?
|
3月前
|
网络协议 网络安全 Go
Kali下安装渗透测试常用工具dnsx和dirsearch
Kali下安装渗透测试常用工具dnsx和dirsearch
64 0
|
3月前
|
Kubernetes NoSQL Linux
linux安装Lua及代码测试
linux安装Lua及代码测试
|
4月前
|
Kubernetes Go API
|
4月前
|
Java Linux 开发工具
MinIO【部署 01】MinIO安装及SpringBoot集成简单测试
MinIO【部署 01】MinIO安装及SpringBoot集成简单测试
124 0
|
4月前
|
消息中间件 Kafka Linux
Kafka【应用 01】Offset Explorer Kafka 的终极 UI 工具安装+简单上手+关键特性测试(一篇学会使用 Offset Explorer)
Kafka【应用 01】Offset Explorer Kafka 的终极 UI 工具安装+简单上手+关键特性测试(一篇学会使用 Offset Explorer)
195 0
|
4月前
|
监控 Java
Pinpoint【部署 02】Pinpoint Agent 安装启动及监控 SpringBoot 项目案例分享(添加快速测试math-game.jar包)
Pinpoint【部署 02】Pinpoint Agent 安装启动及监控 SpringBoot 项目案例分享(添加快速测试math-game.jar包)
78 0