Temporal Workflow SDK trong Go: Kiến Trúc Orchestration & Resilient Distributed Systems

Temporal Workflow SDK trong Go: Kiến Trúc Orchestration & Resilient Distributed Systems

← Chương trước: NATS JetStream & Golang | Mục lục Series | Chương tiếp theo: Kiến Trúc Bảo Mật Zero-Trust Cho Microservices → Answer-first: Temporal is a durable execution platform providing fault-tolerant state orchestration for microservices via Event Sourcing. In Golang, Temporal Workflows demand strict determinism for event history replay. Production reliability requires separating deterministic workflows from I/O activities, managing LIFO Saga compensations, tuning worker concurrency parameters, and compacting event histories via ContinueAsNew before hitting cluster limits. ...

25 tháng 7, 2026 · 10 phút · Lê Tuấn Anh
Phần 4: Saga Pattern: Giao Dịch Phân Tán Không Cần 2PC

Phần 4: Saga Pattern: Giao Dịch Phân Tán Không Cần 2PC

🇬🇧 Read the English version on tanhdev.com ← Chương trước: Phần 3: Event Sourcing & CQRS | Mục lục Series | Chương tiếp theo: Phần 5: ISO 20022 & Payment Gateways → Answer-first: Saga Pattern thay thế giao thức Two-Phase Commit (2PC) trong microservices ngân hàng bằng chuỗi các giao dịch cục bộ phối hợp qua Temporal Workflow hoặc Kafka, kèm cơ chế giao dịch bù trừ (Compensating Transactions) và Dead Letter Queue khi xảy ra sự cố. ...

18 tháng 6, 2026 · 10 phút · Lê Tuấn Anh
Phần 4: Kiến trúc Core Banking hiện đại và Event-Driven

Phần 4: Kiến trúc Core Banking hiện đại và Event-Driven

← Chương trước: Phần 3 — Giao dịch ACID & Concurrency trong Core Banking | Mục lục Series | Chương tiếp theo: Phần 5 — Tiêu chuẩn Core Banking ISO 8583 & ISO 20022 → Answer-first: Kiến trúc Core Banking hiện đại chuyển đổi từ Monolith sang Microservices hướng sự kiện (Event-Driven): áp dụng Event Sourcing cho Sổ Cái bất biến, CQRS phân tách luồng ghi ACID và đọc tốc độ cao, Saga Pattern điều phối giao dịch phân tán và Transactional Outbox đảm bảo chuyển phát sự kiện an toàn At-Least-Once. ...

6 tháng 5, 2026 · 7 phút · Lê Tuấn Anh
Saga Pattern Là Gì? Giao Dịch Phân Tán Với Temporal & Go

Saga Pattern Là Gì? Giao Dịch Phân Tán Với Temporal & Go

🇬🇧 Read the English version on tanhdev.com ← Chương trước: Thiết Kế API Lũy Đẳng (Idempotent API) — Khóa Lũy Đẳng, Middleware SetNX & Mẫu Stripe | Mục lục Series | Chương tiếp theo: Băm Nhất Quán (Consistent Hashing) — Node Ảo, Phương Sai Tải & Vòng CRC32 Trong Go → Answer-first: Saga Pattern là mô hình quản lý giao dịch phân tán trong microservices bằng cách chia nhỏ thành chuỗi giao dịch cục bộ (local transactions). Khi một bước thất bại, hệ thống tự động kích hoạt chuỗi hành động bù trừ (compensating transactions) theo thứ tự ngược LIFO để khôi phục tính nhất quán cuối cùng mà không cần dùng khóa phân tán 2PC. ...

18 tháng 6, 2026 · 11 phút · Lê Tuấn Anh
Phần 9: Transactional Outbox & Saga đảm bảo giao sự kiện

Phần 9: Transactional Outbox & Saga đảm bảo giao sự kiện

← Chương trước: Phần 8: Giai Đoạn 3 — Full Cutover Zero Downtime | Mục lục Series | Chương tiếp theo: Phần 10: 24 Quyết Định Kiến Trúc (ADRs) → Answer-first: Xử lý giao dịch phân tán khi khách hàng đặt hàng bằng cách kết hợp Transactional Outbox pattern trong PostgreSQL và Saga Choreography qua Dapr Pub/Sub, đảm bảo tính nhất quán cuối cùng giữa Giỏ hàng, Đơn hàng, Thanh toán và Kho vận. ...

3 tháng 6, 2026 · 18 phút · Lê Tuấn Anh
Temporal Saga Pattern in Golang Distributed Transactions

Triển khai Giao dịch Phân tán trong Go với Temporal Saga Pattern

Answer-first: Temporal Saga Pattern trong Go giải quyết giao dịch phân tán FinTech thay thế 2PC chặn khóa. Bộ điều phối Workflow lưu trạng thái tất định, tự động kích hoạt chuỗi bù trừ đảo ngược khi có lỗi hạ tầng, bảo toàn nguyên lý sổ kép SUM(Debits)=SUM(Credits) và ngăn ngừa trùng lặp nhờ Idempotency Key. 🇬🇧 Read the English version of this article on tanhdev.com 🏛️ Bài viết này thuộc chuyên đề thiết kế hệ thống giao dịch phân tán chịu tải cao. Xem thêm tại Series Thiết Kế Hệ Thống Phân Tán High-Concurrency. ...

23 tháng 7, 2026 · 25 phút · Lê Tuấn Anh

Tech Radar 22/07: Event-Driven Agentic Saga với Dapr Workflows

🇬🇧 Read the English version of this article on tanhdev.com Trả lời nhanh (Answer-first): Dapr Workflows điều phối hiệu quả các tác vụ AI Agent kéo dài trong Go bằng cách cung cấp trạng thái bền vững (durable state), cơ chế thử lại (retries) và bù trừ tác vụ (Saga compensation) rõ ràng. Giữ các lệnh gọi LLM và công cụ bên ngoài trong các activity idempotent — thay vì trong orchestrator — để khi replay, hệ thống tái cấu trúc lại trạng thái quyết định mà không lặp lại các tác dụng phụ (side effects) đã hoàn tất. ...

22 tháng 7, 2026 · 8 phút · Lê Tuấn Anh
Orchestrated Saga Pattern với Temporal Go SDK trong FinTech Microservices

Orchestrated Saga Pattern Với Temporal Go SDK Trong FinTech Microservices

Answer-first: Orchestrated Saga Pattern với Temporal Go SDK quản lý giao dịch phân tán FinTech bằng bộ điều phối tập trung Event Sourcing Replay, lưu trữ lịch sử tất định (deterministic), thực thi bù trừ LIFO qua Disconnected Context khi xảy ra lỗi, và ngăn chặn giao dịch trùng lặp bằng Idempotency Key kèm Transactional Outbox. 📌 Thông Báo Chuyển Hướng / Consolidation: Bài viết này đã được hợp nhất và mở rộng đầy đủ phiên bản kiến trúc 2026 tại: Triển khai Giao dịch Phân tán trong Go với Temporal Saga Pattern. ...

17 tháng 7, 2026 · 13 phút · Lê Tuấn Anh
Composable Banking Architecture: Go & BIAN Blueprint

Composable Banking Architecture: Go & BIAN Blueprint

Composable Banking Architecture: Go & BIAN Blueprint Answer-first: Composable banking architecture replaces monolithic core banking software with modular, independent Packaged Business Capabilities (PBCs) aligned to BIAN standards. Connected via Go microservices, event streams (Kafka), and Temporal Saga orchestrators, composable banking enables financial institutions to deploy new financial products in days, achieve sub-10ms ledger settlement, and eliminate high-risk “Big Bang” migration outages. Migration Path from Monolith to Composable Transitioning to a composable core requires a phased approach to mitigate operational risk: ...

10 tháng 6, 2026 · 21 phút · Lê Tuấn Anh
Kiến trúc Microservices Ngân hàng với Go: Mẫu Saga, event sourcing, và sổ cái phân tán

Kiến trúc Microservices Ngân hàng: Go, Saga & Event Sourcing

Answer-first: Kiến trúc Banking Microservices với Golang áp dụng Sổ cái kép (Double-Entry Ledger), Event Sourcing và Orchestrated Saga Pattern qua Dapr/Temporal. Đảm bảo toàn vẹn giao dịch tài chính ACID ở cấp độ nghiệp vụ, cách ly tài khoản nguồn-đích và xử lý bù trừ tự động khi phát sinh sự cố mạng. 🇬🇧 Read the English version of this article on tanhdev.com 1. Giới thiệu: Phá vỡ Core Banking truyền thống Trả lời nhanh: Một kiến trúc microservices ngân hàng hiện đại sẽ thay thế các sổ cái nguyên khối cũ (như T24 hoặc Flexcube) bằng cách sử dụng Go để định tuyến giao dịch với thông lượng cao. Hệ thống đạt được tính nhất quán phân tán mà không cần dùng two-phase commit (2PC) bằng cách kết hợp Event Sourcing (luồng sự kiện bất biến của sổ cái), Điều phối Saga (dùng Temporal hoặc Dapr), mẫu Transactional Outbox và ràng buộc unique của PostgreSQL để đảm bảo API luôn idempotent. ...

1 tháng 6, 2026 · 18 phút · Lê Tuấn Anh
Thiết kế Hệ sinh thái Thương mại điện tử 21 Microservices với Golang và DDD

Thiết kế Hệ sinh thái Thương mại điện tử 21 Microservices với Golang và DDD

Answer-first: Hệ sinh thái 21 Golang microservices cho TMĐT được phân rã theo Domain-Driven Design (DDD) thành 4 cụm: Core Commerce, Logistics, Engagement và Platform. Giao tiếp qua gRPC nội bộ và NATS JetStream Event Broker, áp dụng Outbox Pattern đảm bảo tính nhất quán dữ liệu phân tán và chịu tải 25.000 QPS. 🇬🇧 Read the English version of this article on tanhdev.com Việc mở rộng quy mô (scale) một nền tảng thương mại điện tử vượt qua cột mốc 10.000+ đơn hàng mỗi ngày, với mỗi đơn chứa nhiều SKU trải dài qua nhiều kho hàng biến động là lúc mà các kiến trúc ngây thơ sẽ sụp đổ. Việc đập thêm tiền nâng cấp phần cứng không còn là viên đạn bạc khi hệ thống phải đối mặt với các giao dịch phân tán (distributed transactions), điều kiện tương tranh (race conditions), và tính nhất quán cuối (eventual consistency). ...

12 tháng 4, 2026 · 8 phút · Lê Tuấn Anh