awesome-everything EN
↑ Обратно к восхождению

Производительность

GC: тест с выбором ответа

Суть Тест с выбором на синтез по всему юниту — давление аллокаций, pacing, компромиссы коллекторов, барьеры и production-сбои.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 12 min

Шесть вопросов поперёк всего юнита. Каждый отражает решение, которое ты принимаешь в реальном инциденте — не определение для заучивания, а компромисс, который надо взвесить под нагрузкой.

Цель

Убедись, что связываешь давление аллокаций, выбор коллектора, ручки тюнинга и production-сбои — тот синтез, к которому вели отдельные уроки.

Викторина

Сервис A держит кэш 4 ГБ и аллоцирует 50 МБ/с. Сервис B держит 100 МБ живых данных и аллоцирует 1 ГБ/с. Коллектор одинаковый. У кого больше GC-хвостовая задержка и почему?

Викторина

Go-сервис в контейнере 4 ГБ спорадически убивается по OOM на пиках трафика; GOGC по умолчанию 100. Какая первая ручка и что она реально делает?

Викторина

После миграции с G1 на (негенерационный) ZGC паузы упали с 60 мс до <1 мс, но пропускная способность снизилась ~12%, а RSS вырос ~18%. Как это читать?

Викторина

Зачем конкурентному коллектору барьер записи и что ломается без него?

Викторина

Java-сервис регистрирует Object.finalize() на обёртках файловых дескрипторов; под нагрузкой число открытых дескрипторов непредсказуемо скачет. Корневая причина?

Викторина

gctrace показывает рост GC CPU 1% → 39% за час, при этом время конкурентной маркировки растёт с 1.3 мс до ~350 мс. Что происходит и какой первый фикс?

Итог

Сквозная линия юнита — одно дерево решений: allocation rate задаёт частоту GC, живой набор задаёт стоимость цикла, коллектор задаёт форму паузы, а ручки (сначала GOMEMLIMIT, потом GOGC/цель по паузе, в последнюю очередь алгоритм) защищают границы. Все production-сбои — OOM на пиках, компромиссы ZGC, штормы финализаторов, death-spiral, allocation-DoS — сводятся к одному рычагу: сократи аллокации, прежде чем что-либо тюнить.

Продолжить восхождение ↑GC: свободное припоминание
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.