Статья объясняет горутины и каналы в Go с наглядными визуализациями, показывая, как они работают и взаимодействуют для конкурентности. Читать далее
Утечку горутин можно легко обнаружить с помощью APM, который отслеживает количество работающих горутин. Вот пример из NewRelic — график, который мониторит горутины: Читать далее
В этом техническом разборе рассмотрим, как инженеры Harness обнаружили и исправили критическую утечку памяти в Go: переназначение переменной контекста в циклах воркеров порождало невидимые цепочки, мешавшие сборщику мусора освобождать память в тысячах горутин, из-за чего их сервис-делегат CI/CD в итоге потреблял гигабайты памяти. Читать разбор
Go (Golang, go.dev) — это статически типизированный компилируемый язык программирования, разработанный компанией Google в 2009 году. Он ориентирован на простоту, производительность и эффективную поддержку конкурентности с помощью горутин и каналов. Go компилируется в нативный машинный код, что обеспечивает высокую скорость выполнения, и включает встроенный сборщик мусора для управления памятью. Читать далее