Что такое STW пауза и почему от неё невозможно полностью избавиться?

Middle
268 просмотров
AFK Offer AI

Stop-The-World пауза — все потоки приложения останавливаются пока GC делает свою работу. Полностью избавиться нельзя потому что как минимум нужно найти root references (stack variables, static fields) в консистентном состоянии. ZGC и Shenandoah свели STW к минимуму (root scanning + phase transitions), но не к нулю. Paused Application Time в GC логах показывает реальное время когда пользователи ждут.

Следующий вопрос

Что такое Strangler Fig паттерн для миграции монолита?