Профилирование Python-приложений в production: инструменты и анализ узких мест
Это то, что нужно для production. Вместо того чтобы инструментировать каждую функцию, sampling-профайлер периодически (например, 100 раз в секунду) заглядывает в стек вызовов и смотрит, что там выполняется. Математика простая: если функция была в стеке в 30% сэмплов, значит она и потребляет примерно 30% ресурсов. # Запуск статистического профилирования скрипта python -m profiling.sampling run my_script.py # Запуск с кастомным интервалом (50 микросекунд) и длительностью 30 секунд python -m profiling.sampling run -i 50 -d 30 my_script.py # Профилирование уже запущенного процесса по PID python -m profiling...