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