a. 创建Celery实例
b. 启动Celery Worker,通过delay()或者apply_async()将任务发布到broker
c. 应用程序调用异步任务
d. 存储结果
Celery Beat: 任务调度器,Beat进程会读取配置文件的内容,周期性的将配置中到期需要执行的任务发送给任务队列
a. 创建Celery实例
b. 配置文件中配置任务,发送任务 celery -A xxx beat
c. 启动Celery Worker celery -A xxx worker -l info -P eventlet
d. 存储结果
如果大写的话,需要写成:
在celery_task同级目录下,执行命令:
celery -A celery_task beat
在celery_task同级目录下,执行命令:
celery -A celery_task worker -l info -P eventlet
可以看到输出:
如果同时在<b>两个虚拟环境(服务器)</b>中都执行定时任务,都可以看到有以上LOG打印。
发布任务
celery -A celery_task beat
执行任务
celery -A celery_task worker -l info -P eventlet
将以上两条合并
celery -B -A celery_task worker
后台启动celery worker进程
celery multi start work_1 -A appcelery
停止worker进程,如果无法停止,加上-A
celery multi stop WORKNAME
重启worker进程
celery multi restart WORKNAME
查看进程数
celery status -A celery_task
优先级 实时:占用全部可用资源,可用资源不足时,优先使用高、较高(高于标准,后同)、一般、较低、自由等级的程序占用的资源 高:占用可用资源,可用资源不足时,占用较高一般较低自由的资源,且会让步自身占用资源给实时级别的程序。 较高:……(同上,省去不打了),占用一般较低自由的资源,…… 一般:……,占用较低自由级别的程序占用的资源,…… 较低:……,占用自由级别程序占用的资源,…… 自由:仅在其他程序资源全部充足情况下可以自由获取资源占用,否则将让步自身占用的资源给其他程序运行 workercelery -A proj worker -l info
运行 app
python manage.py runserver 0.0.0.0:8000
然后你打开浏览器的地址
输入刚才的账号密码就可以了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)