芹菜每次都不处理任务

时间:2019-11-07 08:48:56

标签: python flask celery

我的芹菜配置如下

celery = Celery(__name__,
    broker=os.environ.get('CELERY_BROKER_URL', 'redis://'),
    backend=os.environ.get('CELERY_BROKER_URL', 'redis://'))

celery.config_from_object(APP_SETTINGS)
ssl = celery.conf.get('REDIS_SSL', True)

r = redis.StrictRedis(REDIS_BROKER, int(REDIS_BROKER_PORT), 0, 
        charset='utf-8', decode_responses=True, ssl=ssl)
        db_uri = celery.conf.get('SQLALCHEMY_DATABASE_URI')

@celery.task 
def process_task(data):
    #some code here

我正在API端点内部调用流程任务,例如 process_task.delay(data)

有时它不处理任务。

有人可以帮助我解决此问题吗?

我正在像celery worker -A api.celery --loglevel=DEBUG --concurrency=10

那样工作

1 个答案:

答案 0 :(得分:0)

一旦所有工作进程都繁忙,新任务将坐在队列上,等待下一个空闲的工作进程启动任务。这很可能是您将其视为“每次都不处理任务”的原因。浏览Celery文档的monitoring and management部分,以查找如何监视Celery群集。对于初学者,请执行celery worker -A api.celery inspect active检查当前正在运行的任务。