Přeskočit na obsah
_CORE
Architektura Expert

Distributed Transactions — přehled

Distributed TransactionsOutbox2PC
3 min čtení

Jak řešit transakce napříč mikroservisami. 2PC, Saga, Outbox pattern a TCC.

2PC

Two-Phase Commit: blokující, pomalý, coordinator = SPOF. V mikroservisách se nepoužívá.

Outbox Pattern

BEGIN;
INSERT INTO orders (id, total) VALUES ('ord-1', 1000);
INSERT INTO outbox (aggregate_type, payload) VALUES (
    'Order', '{"type": "OrderCreated", "orderId": "ord-1"}'
);
COMMIT;
-- Debezium CDC čte outbox a publishuje eventy

Saga vs TCC

  • Saga — sekvence lokálních transakcí + kompenzace
  • TCC (Try-Confirm-Cancel) — rezervace → potvrzení/zrušení

Shrnutí

Saga je nejčastější volba, Outbox řeší reliable messaging. 2PC se v mikroservisách vyhýbejte.

Potřebujete pomoct s implementací?

Náš tým má zkušenosti s návrhem a implementací moderních architektur. Rádi vám pomůžeme.

Nezávazná konzultace