Two-phase commit (2PC) — протокол для атомарных распределённых транзакций. Фаза 1 (prepare): координатор спрашивает все участники "готовы закоммитить?". Каждый отвечает YES или NO. Фаза 2 (commit/abort): если все сказали YES — координатор шлёт COMMIT всем. Если хоть один NO — шлёт ABORT. Проблема: если координатор упал между фазами — участники зависают в неопределённости (blocking protocol). Плюс это медленно из-за двух раундов. Поэтому в микросервисах предпочитают saga pattern, а 2PC оставляют для БД.
Что такое two-phase commit?
Senior
313 просмотровAFK Offer AI
Как работает goroutine scheduling loop?