🔄
Data Management

Saga Pattern

Distributed Transactions
💡 Saga, pattern, EK, "MULTI-STEP, TRAVEL, ITINERARY" jaisa, hai — AGAR, EK, STEP, (jaise, HOTEL, BOOKING) FAIL, hota, hai, PICHLE, SAARE, steps, (jaise, FLIGHT, BOOKING) COMPENSATE, (CANCEL) kiye, jaate, hain, taaki, OVERALL, "TRIP" CONSISTENT, RAHE.

Saga, pattern, EK, DISTRIBUTED, TRANSACTION, ko, EK, SERIES, of, LOCAL, TRANSACTIONS, mein, BREAK, karta hai — HAR, STEP, ka, EK, "COMPENSATING" ACTION, hota hai, JO, PREVIOUS, STEP, ko, UNDO, karta hai, AGAR, KOI, BAAD, ka, STEP, FAIL, ho, jaaye.

CHOREOGRAPHY-based, saga, mein, HAR, service, EVENTS, ko, LISTEN, karके, apna, KAAM, karti hai (koi, central, coordinator, nahi). Orchestration-based, saga, mein, EK, CENTRAL, "orchestrator" HAR, STEP, ko, EXPLICITLY, COORDINATE, karta hai.

// Orchestration-based saga:
async function placeOrderSaga(order) {
  try {
    await reserveInventory(order);
    await processPayment(order);
    await scheduleShipping(order);
  } catch (err) {
    await compensate(order);   // rollback, previous, successful, steps
  }
}
🔄
Saga, pattern, EK, "MULTI-STEP, TRAVEL, ITINERARY" jaisa, hai — AGAR, EK, STEP, (jaise, HOTEL, BOOKING) FAIL, hota, hai, PICHLE, SAARE, steps, (jaise, FLIGHT, BOOKING) COMPENSATE, (CANCEL) kiye, jaate, hain, taaki, OVERALL, "TRIP" CONSISTENT, RAHE.
1 / 2
⚡ Quick Recap
  • Saga = distributed, transaction, ko, local, transactions, ki, series, mein, break, karta, hai
  • Compensating, actions, se, failed, steps, ko, "rollback" kiya, jaata, hai
  • Choreography (event-based) vs, Orchestration (central, coordinator)
Is page mein (2 subtopics)

Choreography-based, sagas, mein, EK, IMPLICIT, "WORKFLOW" hota hai, JO, MULTIPLE, services, ke, EVENT, handlers, mein, SPREAD, hota hai — SIMPLE, sagas, ke, liye, GOOD, hai, LEKIN, COMPLEX, sagas, (many, steps) ke, liye, "KAUN, KYA, kar, raha, hai" TRACK, karna, HARD, ho, jaata hai.

⚠️Common Mistake: Choreography, sagas, complex, ho, jaane, PAR, DEBUG, karna, MUSHKIL, hota, hai — koi, single, jagah, nahi, hai, JAHA, POORA, workflow, dikhta, ho — orchestration, aksar, COMPLEX, sagas, ke, liye, CLEARER, hoti, hai.

Saga, steps, ko, IDEMPOTENT, hona, CHAHIYE (SAME, operation, MULTIPLE, baar, RUN, karne, PAR, SAME, result) — kyunki, RETRIES, (network, failures, ke, WAJAH, se) EK, HI, step, ko, MULTIPLE, baar, TRIGGER, kar, sakte, hain.