В этом техническом разборе рассмотрим, как инженеры Harness обнаружили и исправили критическую утечку памяти в Go: переназначение переменной контекста в циклах воркеров порождало невидимые цепочки, мешавшие сборщику мусора освобождать память в тысячах горутин, из-за чего их сервис-делегат CI/CD в итоге потреблял гигабайты памяти. Читать разбор
Утечку горутин можно легко обнаружить с помощью APM, который отслеживает количество работающих горутин. Вот пример из NewRelic — график, который мониторит горутины: Читать далее
В прошлом месяце я исследовал периодически возникающие всплески задержек в нашем сервисе отчётности и обнаружил нечто, заставившее меня не поверить своим глазам: 102 потока блокировалось одновременно, и все они ждали одной блокировки. Причиной этого оказалась одна строка кода,…
Уже поняли про что речь? Верно, про утечку. Если быть точнее, про утечку персональных данных из компании. Лет 10 назад это понятие не вызывало откровенно негативных чувств. С недавних пор оно неразрывно с тревогой и печалью, а буквально через полтора месяца уже будет навевать гнев и нести опустошение: не только эмоциональное, но и финансовое, ибо новые штрафы за утечку персональных данных вырастут до астрономических значений. Какие еще штрафы будет выписывать РКН