You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello,
I recently took care of CeleryExecutor. I managed to optimize the status retrieval by using bulk operations. Instead of fetching the status for each task using a separate query, one is sent for all tasks. This has accelerated this process more than 100 times in many cases. #7542
However, we still use single requests in many processes to send tasks to the queue. This is very effective because of network latency.
celery redis need more care actually :) with my current time and other priorities in celery i didnt contribute much on redis part. I'm more focused on amqp 1.0 and kafka support and asyncio based worker....
Description
Hello,
I recently took care of CeleryExecutor. I managed to optimize the status retrieval by using bulk operations. Instead of fetching the status for each task using a separate query, one is sent for all tasks. This has accelerated this process more than 100 times in many cases.
#7542
However, we still use single requests in many processes to send tasks to the queue. This is very effective because of network latency.
airflow/airflow/executors/celery_executor.py
Lines 196 to 206 in f1dc2e0
It would be nice if it could be done as a bulk request in a single request. For Redis, this means using Pipeline.
https://github.com/andymccurdy/redis-py#pipelines
Can it be done easily in Celery?
Best regards,
Kamil
The text was updated successfully, but these errors were encountered: