繁体   English   中英

Celery 每次都不处理任务

[英]Celery not processing tasks everytime

我对 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这样的工人

一旦所有的工作进程都忙起来,新任务就会坐在队列中等待下一个空闲的工作进程开始任务。 这很可能是您认为这是“不是每次都处理任务”的原因。 Go 通过 Celery 文档的监控和管理部分了解如何监控您的 Celery 集群。 对于初学者,请执行celery worker -A api.celery inspect active以检查当前正在运行的任务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM