Преамбула #1: сам я сисадмин, но есть понимание о программировании.
Преамбула #2: программисты пишущие проект искать утечку не хотят.
Задача: есть проект на django/gunicorn, само собой куча сторонних библиотек. Доступ к исходникам тоже есть. Та часть проекта, что отвечает за фронтенд достаточно активно утекает, и на текущий момент это решается переодической перезагрузкой фронта. Но всеже хочется избавится от этой проблемы. Коллеги, можете навести на методики поиска утечек связанныз с python кодом? У меня пока не получается...корректно задать ворос гуглу, чтобы добраться до результата. :)
PS Мне не хватит скиллов, чтобы решить этот вопрос отталкиваясь от кода, поэтому иду от системы.
У gunicorn есть опция --max-requests X - если включить, воркеры у gunicorn будут перегружаться каждые X запросов, по идее память тоже будет выделяться по-новой.
Спасибо.
Гуглил и не раз, и по разным ключевым словам. Конкретно эту статью не читал. В большинстве случаев нужно было идти от кода, что для меня проблема - я не разработчик все же.
Моя цель отловить в памяти функцию/массив который разрастается, и отослать это программерам с критической пометкой.
Решение идти "от системы", чтобы определить проблемы, связанные с утечками, мне кажется неверным изначально. Профилирование, поиск проблем - задачи программистов, при чем, желательно знакомых с кодом. Нет ничего удивительного, что у вас трудности с решением проблемы.
Мне кажется, надо не пытаться решить задачу, которую вы решить не можете, а сделать так, чтобы её решали те, кто сможет это сделать и сделать это эффективно.
Формулировка "программисты пишущие проект искать утечку не хотят" ущербна изначально. Объясните руководству суть проблемы, кто её может решить и кто её решать должен.