113 читали · 6 лет назад
Пару слов о профилировании памяти в Python
Статья подготовлена для студентов курса «Web-разработчик на Python» в образовательном проекте OTUS. Проблемы с памятью в приложениях — явление довольно частое. Правда, в Python, где работать с памятью напрямую приходится разве что при написании CPython-расширений, сталкиваться с этим приходится реже. Ещё часть рисков снимают фреймворки. Тем не менее понимать, как распределяется память в приложении, всегда полезно. Давайте посмотрим, какие возможности у нас есть на примере небольшого Django-проекта...
Профилирование в Python: типы, инструменты и практическая реализация
Введение в профилирование Профилирование — это процесс анализа производительности кода для выявления «узких мест» (bottlenecks), которые замедляют выполнение программы. Оно позволяет определить, какие части кода потребляют больше всего времени процессора или памяти, и оптимизировать их. В Python для этого используются как встроенные модули, так и сторонние инструменты. 1. Статические профилировщики Анализируют код без его выполнения, выявляя потенциальные проблемы на основе структуры программы....