Nâng CaoRabbitMQ iconRabbitMQ

Saga pattern là gì và hoạt động với RabbitMQ như thế nào?

Saga pattern chia distributed transaction thành chuỗi local transaction — mỗi service update DB của mình và publish event qua RabbitMQ.

Có 2 cách:

  1. Choreography: mỗi service lắng nghe event và publish event của mình (phi tập trung, khó trace).
  2. Orchestration: một coordinator service điều phối từng bước (tập trung, dễ hiểu hơn)

Ví dụ order saga: payment service (trừ tiền) → inventory service (giữ hàng) → shipping service (lên lịch giao).

Nếu một bước fail, compensating transaction chạy ngược lại.

Xem toàn bộ RabbitMQ cùng filter theo level & chủ đề con.

Mở danh sách RabbitMQ