Как найти memory leak в production?

Middle+
281 просмотров
AFK Offer AI

Подключаешь pprof и снимаешь heap-профиль дважды с интервалом в несколько минут. Сравниваешь через go tool pprof -diff_base — сразу видно, где растут аллокации. Чаще всего утечки из-за горутин, которые не завершаются, или из-за глобальных map/slice, которые только растут. Ещё полезно мониторить runtime.MemStats — если HeapInuse растёт, а HeapReleased нет, значит память не отдаётся ОС.

Следующий вопрос

Как писать API тесты?