Как GOGC влияет на производительность сервиса? Что такое STW и как оно влияет на latency?

GOGC задаёт целевой рост памяти между циклами GC: большее значение обычно уменьшает частоту сборок ценой памяти. STW-паузы могут влиять на хвост задержек.

Короткий ответ

Что ответить на собеседовании

GOGC задаёт целевой рост памяти между циклами GC: большее значение обычно уменьшает частоту сборок ценой памяти. STW-паузы могут влиять на хвост задержек.

Подробный разбор

Ответ с пояснениями

GOGC задаёт целевой рост памяти между циклами GC: большее значение обычно уменьшает частоту сборок ценой памяти. STW-паузы могут влиять на хвост задержек.

Меньший GOGC часто увеличивает работу сборщика, а слишком большой может приблизить процесс к лимиту памяти. При настройке учитывайте также memory limit и реальный профиль аллокаций. STW — остановка выполнения Go-кода на согласованных фазах, а не весь цикл конкурентного GC. Сравнивайте p95/p99, CPU и память на одинаковой нагрузке, а не ориентируйтесь на одну настройку.

Источник: go.dev.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее