celery+django的定时任务设置 - 最佳实践 - 在django管理后台配置定时任务
1.快速测试和监控,启动多个celery worker,-A 指定项目目录, -P 指定方式,我这里以协程方式运行, -n指定name
celery worker -A voice_quality_assurance_configure --loglevel=info -P eventlet -n worker1
celery worker -A voice_quality_assurance_configure --loglevel=info -P eventlet -n worker2
参考:https://www.cnblogs.com/-wenli/p/13723910.html
https://www.cnblogs.com/-wenli/p/13746509.html
2.我的启动命令
1. D:\djangotest\myrecrument> python .\manage.py runserver 0.0.0.0:8000 2. D:\djangotest\myrecrument> celery -A myrecrument worker --loglevel=INFO -P eventlet #启动celery 3. D:\djangotest\myrecrument\mycelery> celery -A tasks flower broker='redis://106.55.234.123:30013/0' #监控 4. D:\djangotest\myrecrument> celery -A myrecrument beat --scheduler django_celery_beat.schedulers:DatabaseScheduler #启动定时任务
3.处理逻辑
from interview.dingtalk import send @app.task def my_custom_tasks_on_django_admin(): send('my custom task on django admin to dingding')
用一个例子来演示会更加清晰