В продакшн-сервисе на Python при росте нагрузки CPU-bound задачи (например, обработка изображений) выполняются значительно медленнее, хотя вы используете ThreadPoolExecutor. Почему так происходит и что правильнее сделать?
👾 — В Python потоки работают медленно, лучше перейти на asyncio
👍 — Из-за GIL потоки не дают прироста для CPU-bound задач, лучше использовать ProcessPoolExecutor или multiprocessing
🥰 — Нужно увеличить количество потоков в пуле, чтобы загрузить CPU на 100%
⚡️ — Проблема в сборщике мусора, надо чаще вызывать gc.collect()
Библиотека задач по Python
👾 — В Python потоки работают медленно, лучше перейти на asyncio
👍 — Из-за GIL потоки не дают прироста для CPU-bound задач, лучше использовать ProcessPoolExecutor или multiprocessing
🥰 — Нужно увеличить количество потоков в пуле, чтобы загрузить CPU на 100%
Библиотека задач по Python
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15