Celery之任务处于PENDING处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33733970/article/details/83178623

1.问题描述:任务一直处于PENDING,重启redis不行!

任务:1ead8f07-8f49-4ef2-9c8c-54a49d90d362 当前的 state 为:PENDING
127.0.0.1 - - [19/Oct/2018 11:06:19] “GET /status/1ead8f07-8f49-4ef2-9c8c-54a49d90d362 HTTP/1.1” 200 -
任务:0570e1b6-1d98-4731-849a-8adfb70bfa14 当前的 state 为:PENDING
127.0.0.1 - - [19/Oct/2018 11:06:19] “GET /status/0570e1b6-1d98-4731-849a-8adfb70bfa14 HTTP/1.1” 200 -
任务:1ead8f07-8f49-4ef2-9c8c-54a49d90d362 当前的 state 为:PENDING
127.0.0.1 - - [19/Oct/2018 11:06:20] “GET /status/1ead8f07-8f49-4ef2-9c8c-54a49d90d362 HTTP/1.1” 200 -
任务:0570e1b6-1d98-4731-849a-8adfb70bfa14 当前的 state 为:PENDING
127.0.0.1 - - [19/Oct/2018 11:06:20] “GET /status/0570e1b6-1d98-4731-849a-8adfb70bfa14 HTTP/1.1” 200 -

2.解决方案:

要把Celery起起来
celery worker -A progressbar_form.celery --loglevel=info

2.1如果之前测试起了太多任务,那么首先要把redis内的任务清除掉
redis-cli -n 11 ltrim transcode 0 196 (任务太多要多试几次)
-n 后面跟的是你要清除的第几个数据库(redis无密码)

参考文档:
https://www.cnblogs.com/shmily3929/p/9004781.html
https://github.com/miguelgrinberg/flask-celery-example/issues/5

猜你喜欢

转载自blog.csdn.net/qq_33733970/article/details/83178623