Lesson 71 — Mini-project: Microservices + Saga
Tổng kết Tier 6: 3 service (Order · Payment · Inventory) giao tiếp qua message bus, saga orchestration cho transaction "đặt hàng", có idempotency.
Module 1 — Kiến trúc (bấm vào từng thành phần)
Orchestrator điều phối; mọi giao tiếp đi qua message bus; 3 service không gọi nhau trực tiếp. Bấm để xem trách nhiệm.
SAGA ORCHESTRATORforward + compensation
▲ publish / subscribe ▼
MESSAGE BUSpub/sub · at-least-once · dedup
▲ events ▼
ORDERPENDING/CONFIRMED/CANCELLED
INVENTORYreserve / release
PAYMENTcharge / refund
Bấm một thành phần để xem chi tiết.
Module 2 — Saga flow (thành công vs bồi hoàn)
Chạy mô phỏng từng bước. Kịch bản "hết hàng" và "payment từ chối" sẽ fail giữa chừng và compensate ngược.
order: —
kho BOOK-GO: 5
payment: —
Module 3 — Event flow & idempotency (dedup)
Bus có thể giao một event nhiều lần (at-least-once). Bật "giao lặp" rồi phát: consumer dedup theo event ID → chỉ xử lý lần đầu.