Kembali ke blog
  • Integrasi Sistem

Pola Saga: Transaksi Lintas Layanan tanpa Lock Global

oleh Mono Solusi

Dalam satu database, transaksi ACID menjamin semua atau tidak sama sekali. Lintas layanan, tidak ada lock global. Membuat pesanan, mencadangkan stok, menagih pembayaran — bila satu gagal di tengah, tidak ada rollback otomatis.

Saga: urutan langkah dengan kompensasi

Saga memecah transaksi menjadi langkah-langkah. Tiap langkah punya aksi kompensasi: bila langkah gagal, langkah sebelumnya dibatalkan dengan kompensasinya, mundur hingga konsisten.

Komponen penting

Idempotensi tiap langkah wajib — karena kompensasi bisa diulang. Dan kompensasi bukan “undo” sempurna; mengembalikan uang lebih mudah daripada membatalkan email yang sudah terkirim. Letakkan langkah tak-terbalikkan paling akhir.

Kapan dipakai

Saat alur lintas layanan perlu konsistensi akhir. Saga bukan gratis — ia lebih kompleks daripada transaksi tunggal. Tapi untuk arsitektur microservices, ia jadi pola andalan.

Punya masalah yang ingin diselesaikan?

Ceritakan kebutuhan Anda. Kami bantu memetakan langkah teknis yang realistis — tanpa janji berlebihan.