#javascript #nodejs
С помощью каких средств, можно обнаружить и найти место, где происходит утечка памяти в javascript? Интересует как node js так и клиентский javascript.
Ответы
Ответ 1
Стандартный инспектор в ноде может помочь. Нужно запустить ноду с флагом --inspect и ссылку, которая выведется в консоли открыть в браузере. Откроется хромовский девтулс. Для поиска утечек есть такой метод сравнения. Сначала вы делаете дамп памяти в момент старта приложения или через непродолжительное время работы. Потом дамп делается через некоторое время работы приложения. Далее вы сравниваете эти два дампа и ищете объекты, которых больше всего. Это и есть ваша утечка. По своему опыту могу сказать, что утечки памяти это результат неверной / неудачной архитектуры. Попробуйте использовать typescript, например. В добавок, утечки бывает сложно найти. Бывают как быстрые, так и медленные утечки. Медленные это когда память в течение долгого времени по чуть чуть утекает. У меня лично бывали только медленные. Решалась это проблема простым перезапуском. Спасибо докеру, что может перезапустить контейнер при привышении памяти.
Комментариев нет:
Отправить комментарий