Что такое distributed transaction в API?

Middle+
214 просмотров
AFK Offer AI

Distributed transaction — операция затрагивающая несколько сервисов которые должны быть согласованы. Классический пример: списать деньги и создать заказ в разных сервисах. Паттерны решения: Saga (цепочка локальных транзакций с компенсациями), 2PC (two-phase commit, редко в микросервисах), eventual consistency через события. В Go обычно реализуют Saga через оркестратор или хореографию.

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

Как реализовать fan-out/fan-in?