首页 > 解决方案 > 自定义 celery 的速率限制和每个组的工人数量

问题描述

我有一个简单的 python celery 任务:

@app.task
def simple_task(key, i):
    print('start', key, i)
    time.sleep(random.uniform(0.5, 1.5))
    print('finish', key, i)

...

def call_simple_tasks():
    for key in ['key1', 'key2', 'key3']:
        for i in range(10):
            simple_task.apply_async(args=[key, i])

是否可以在两个条件下自定义 celery 队列(使用 routing_key 或其他):

我找到rate_limit了任务的属性,但它不允许每个键的限制。

标签: pythoncelery

解决方案


推荐阅读