brick----pydata----py_statistics #写方法
app_djcelery----tasks.py----b_store_abnormal_picking_timing #调方法
app_djcelery----tasks_routes.py----PY_STORE_STATISTICS #配置队列
#若是新加的队列,需要在setting----CELERY_QUEUE中配置
Queue(name='py_store_statistics', exchange=Exchange('py_store_statistics'), routing_key='py_store_statistics'), #仓库每月同步数据
若新增队列
1. 代码合到SVN,71,245
2. 先配置好数据库表:djcelery_periodictask,具体查看数据库已存在队列
3. 增加新的队列由开发人员配置好队列相关信息,生成队列的语句,写到/data/djangostack-1.9.7/ start.sh脚本文件中,具体参照已存在队列
4 重启45服务器 106.14.125.45
先杀存在的beat进程
ps -ef | grep beat
Kill -9 进程号:如
Kill -9 10537
查看是否杀死
ps -ef | grep beat
如杀死则执行语句,重启
nohup python manage.py celery beat --loglevel=info &
执行后检查是否已经启动
ps -ef | grep beat
启动成功后方可离开
然后到71,245 中直接启动队列
Ps:注意和代码时要先合到celery的svn(svn://192.168.101.60/hq/celery)
注意重启队列或者45时一定要确认,完全启动成功才可离开
在其他队列中增加任务
连接 71,245
cd /data/djangostack-1.9.7/
cat start.sh
找到对应的队列,复制队列语句,如 (Project下运行)
nohup python manage.py celery worker -c 1 -n real_time_worker_71 -Q real_time --loglevel=error >/dev/null &
#重启队列前先杀存在的进程
#找到队列的进程号:
ps -ef | grep 队列名 例如:ps -ef | grep real_time
#kill杀死进程
kill -9 PID号 例如:kill -9 17662
#用刚才复制的启动队列,在Project下执行
nohup python manage.py celery worker -c 1 -n real_time_worker_71 -Q real_time --loglevel=error >/dev/null &
界面配置部分:
代码修改提交之后,需要在djcelery_periodictask表中添加任务,界面入口在:
文档与系统配置/配置/Celery任务,点击右上角”增加celery定时任务配置表”进入配置页面。
任务名:填写tasks.py中定义的任务名
任务路径:一般是按照”app_djcelery.tasks.任务名”的规则填写,例如”app_djcelery.tasks.show_wish_pb”,其他特殊情况另行说明
启用状态:停用/启用
任务类型:分为4种,分别对应:1-定时任务,2-实时任务,3-函数计算,4-Crantab
Args与Kwargs:按照任务定义的要求视具体情况填写
定时执行与时间间隔执行:根据任务类型二选一填写(具体对应的规则见下图)
Queue、Exchange、Routing_key:Queue和Routing与tasks_routes.py中的配置一致,Exchange配一样的值
描述:celery任务具体的描述
#查看是否启动
ps -aux | grep 队列名_服务器尾号
ps -ef | grep 队列名_服务器尾号
#kill进程
kill -9 PID号
#启动任务:在Project下运行 需要manage.py文件
nohup python manage.py celery worker -c 1 -n 队列名_服务器尾号 -Q 队列名 --loglevel=error >/dev/null&
#shell测试
使用 python shell
cd /data/djangostack-1.9.7/apps/django/django_projects/Project
python manage.py shell
>>>from app_djcelery.tasks import b_store_abnormal_picking_timing
>>>b_store_abnormal_picking_timing()
网友评论