Orchestrated Saga Pattern với Temporal: Thiết Kế Giao Dịch Phân Tán Bền Bỉ Trong Go
🇬🇧 Read the English version of this article on tanhdev.com Nỗi Đau của Giao Dịch Phân Tán trong Hệ Thống Core Banking Trong kiến trúc Monolith nguyên khối truyền thống, việc đảm bảo tính ACID (Atomicity, Consistency, Isolation, Durability) của một giao dịch tài chính cực kỳ đơn giản. Bạn chỉ cần mở một Database Transaction, thực thi hàng loạt câu lệnh SQL (trừ tiền tài khoản A, cộng tiền tài khoản B, ghi log kiểm toán), và cuối cùng gọi COMMIT. Nếu có bất kỳ lỗi gì xảy ra giữa chừng, bạn gọi ROLLBACK, và database engine sẽ tự động hoàn tác mọi thứ về trạng thái nguyên sơ ban đầu một cách hoàn hảo. ...