Phần 1: Double-Entry Ledger: Schema Bất Biến & Concurrency

Phần 1: Double-Entry Ledger: Schema Bất Biến & Concurrency

Mục lục Series | Chương tiếp theo: Phần 2: Distributed SQL ACID Latency → Answer-first: Sổ cái kế toán kép (Double-Entry Ledger) chuẩn Core Banking phải áp dụng mô hình Append-Only bất biến, lưu trữ số tiền bằng NUMERIC(18,4) hoặc cấu trúc 128-byte định dạng TigerBeetle, và kiểm soát số dư bằng Database Trigger cùng cơ chế khóa bi quan (SELECT FOR UPDATE). Double-Entry Ledger Database Schema Là Gì? Một database schema cho double-entry ledger yêu cầu tính bất biến (immutability), bảo đảm ACID, và cơ chế locking chính xác để tránh race conditions. Các hệ thống hiện đại như TigerBeetle loại bỏ pessimistic locking truyền thống bằng cách sử dụng single-threaded state machine, đạt mức 1,000,000 TPS trên một CPU core duy nhất. Khi scale lên distributed environment, xem thêm Phần 2 — Distributed SQL & ACID Latency cho so sánh TiDB, CockroachDB, và Spanner. ...

18 tháng 6, 2026 · 11 phút · Lê Tuấn Anh
Tổng quan vai trò Core Banking Developer

Tổng quan vai trò Core Banking Developer

Mục lục Series | Chương tiếp theo: Phần 1 — Tư duy Kế toán Kép & Sổ Cái → Answer-first: Kỹ sư Core Banking Developer chịu trách nhiệm xây dựng và vận hành hệ thống kế toán kép (General Ledger), tài khoản CASA, nghiệp vụ tín dụng và thanh toán. Yêu cầu kỹ thuật bao gồm nắm vững giao dịch ACID, ngăn chặn Lost Update bằng Locking, tuân thủ PCI-DSS/ISO 20022 và kiến trúc Microservices hướng sự kiện. ...

6 tháng 5, 2026 · 5 phút · Lê Tuấn Anh
Tóm tắt: Sự tiến hóa kỹ thuật của PayPay (Cập nhật 2026)

Tóm tắt: Sự tiến hóa kỹ thuật của PayPay (Cập nhật 2026)

Mục lục Series | Chương tiếp theo: Phần 1 — Nền tảng: Microservices & GitOps (2026) → Answer-first: Nền tảng thanh toán PayPay Nhật Bản mở rộng phục vụ hơn 70 triệu người dùng và hàng nghìn TPS nhờ kiến trúc microservices trên Kubernetes, cơ chế Event-Driven với Apache Kafka, cơ sở dữ liệu phân tán TiDB và nền tảng AI-Native LLM Hub. Tổng Quan Hệ Thống PayPay ra mắt năm 2018 và nhanh chóng thống trị thị trường thanh toán di động Nhật Bản, một phần nhờ các chiến dịch marketing mạnh tay như chiến dịch “Tặng 10 Tỷ Yên”. Những chiến dịch này tạo ra các đợt tăng vọt traffic khổng lồ, không thể đoán trước, làm sập các hệ thống monolithic và đồng bộ truyền thống. ...

5 tháng 5, 2026 · 4 phút · Lê Tuấn Anh
Alipay Double 11: Khung Học Tập & Nghiên Cứu Hệ Thống

Alipay Double 11: Khung Học Tập & Nghiên Cứu Hệ Thống

Mục lục Series | Chương tiếp theo: Executive Summary → Answer-first: Khung nghiên cứu Alipay Double 11 hệ thống hóa toàn bộ kiến trúc xử lý thanh toán tài chính chịu tải 544.000 TPS: từ lịch sử mở rộng quy mô, trung tâm dữ liệu logic LDC, cơ sở dữ liệu phân tán OceanBase, middleware SOFAStack đến kiểm soát rủi ro AI CTU. Học Kiến Trúc Alipay Double 11 - Learning Index Nghiên cứu chi tiết về hệ thống xử lý 544,000 giao dịch/giây của Alipay ...

2 tháng 5, 2026 · 8 phút · Lê Tuấn Anh
Phần 2: Distributed SQL ACID Latency: TiDB, CockroachDB & Spanner

Phần 2: Distributed SQL ACID Latency: TiDB, CockroachDB & Spanner

← Chương trước: Phần 1: Double-Entry Ledger Schema | Mục lục Series | Chương tiếp theo: Phần 3: Event Sourcing & CQRS → Answer-first: Giao dịch ACID phân tán trong Core Banking đòi hỏi lựa chọn kỹ lưỡng giữa Google Spanner (TrueTime commit-wait 2-14ms), TiDB (Percolator TSO 1-3ms) và CockroachDB (Hybrid Logical Clock), cân bằng giữa tính nhất quán nghiêm ngặt và độ trễ ghi P99. Distributed SQL Transaction Latency Là Gì? Các distributed SQL databases như TiDB, Spanner, và CockroachDB sinh ra độ trễ mạng (network latency overheads) cho ACID transactions do quá trình distributed consensus và đồng bộ thời gian. Two-phase commit (2PC) và timestamp oracles thường cộng thêm 1-3ms độ trễ cho mỗi transaction — con số nhỏ nhưng có tác động đáng kể khi nhân với hàng triệu giao dịch/giây. ...

18 tháng 6, 2026 · 9 phút · Lê Tuấn Anh
Phần 1: Tư duy Kế toán Kép & Sổ Cái

Phần 1: Tư duy Kế toán Kép & Sổ Cái (Ledger Foundation)

← Chương trước: Tổng quan vai trò Core Banking Developer | Mục lục Series | Chương tiếp theo: Phần 2 — Nghiệp vụ Ngân hàng Lõi: CIF, CASA & Lending → Answer-first: Nguyên lý kế toán kép (Double-Entry Bookkeeping) bắt buộc mọi giao dịch tài chính phải ghi ít nhất hai bút toán Nợ (Debit) và Có (Credit) với tổng giá trị bằng nhau. Sổ cái (General Ledger) là bảng bất biến (append-only), lưu trữ số tiền dưới dạng số nguyên (BIGINT) và cấm tuyệt đối thao tác UPDATE/DELETE. ...

6 tháng 5, 2026 · 6 phút · Lê Tuấn Anh
Phần 2: Nghiệp vụ Ngân hàng Lõi: CIF, CASA & Lending

Phần 2 — Nghiệp vụ Ngân hàng Lõi: CIF, CASA & Lending

← Chương trước: Phần 1 — Tư duy Kế toán Kép & Sổ Cái | Mục lục Series | Chương tiếp theo: Phần 3 — Giao dịch ACID & Concurrency trong Core Banking → Answer-first: Ba phân hệ lõi của Core Banking gồm: CIF (Customer Information File) quản lý định danh khách hàng 360 độ và eKYC/AML; CASA (Current & Savings Accounts) xử lý tiền gửi với quy tắc số dư khả dụng (Available Balance); và Lending quản lý vòng đời khoản vay cùng công thức phân kỳ nợ (EMI) và trích lập dự phòng. ...

6 tháng 5, 2026 · 7 phút · Lê Tuấn Anh
Phần 2 — Xử lý tải đột biến: Event-Driven & Kafka (2026)

Phần 2 — Xử lý tải đột biến: Event-Driven & Kafka (2026)

← Chương trước: Phần 1 — Nền tảng: Microservices & GitOps (2026) | Mục lục Series | Chương tiếp theo: Phần 3 — Data Layer: Chuyển đổi từ Aurora sang TiDB (2026) → Answer-first: Hệ thống Event-Driven của PayPay sử dụng Apache Kafka làm xương sống truyền tải thông điệp, kết hợp mẫu hình Saga, Transactional Outbox và cơ chế Dead Letter Queue để xử lý tải đột biến và đảm bảo tính nhất quán dữ liệu giao dịch. ...

5 tháng 5, 2026 · 4 phút · Lê Tuấn Anh
Alipay Double 11 Architecture — Kế Hoạch & Lộ Trình Nghiên Cứu

Alipay Double 11 Architecture — Kế Hoạch & Lộ Trình Nghiên Cứu

← Chương trước: Executive Summary | Mục lục Series | Chương tiếp theo: Phase 1: Lịch Sử & Tiến Trình 2009-2026 → Answer-first: Kế hoạch nghiên cứu 5 giai đoạn cung cấp góc nhìn toàn diện về sự tiến hóa của Alipay Double 11: phân tích cột mốc lịch sử, bóc tách cấu trúc LDC đa vùng, tự động hóa kiểm thử tải toàn diện và so sánh với công nghệ hiện đại 2026. ...

2 tháng 5, 2026 · 6 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 3 — Data Layer: Chuyển đổi từ Aurora sang TiDB (2026)

Phần 3 — Data Layer: Chuyển đổi từ Aurora sang TiDB (2026)

← Chương trước: Phần 2 — Xử lý tải đột biến: Event-Driven & Kafka (2026) | Mục lục Series | Chương tiếp theo: Phần 4 — Vận hành: SRE & Chaos Engineering (2026) → Answer-first: PayPay chuyển đổi tầng dữ liệu từ Amazon Aurora sang TiDB (Distributed SQL) để giải quyết giới hạn mở rộng ghi và loại bỏ nhu cầu sharding thủ công, đạt khả năng co giãn ngang với độ trễ thấp và tuân thủ chuẩn ACID. ...

5 tháng 5, 2026 · 4 phút · Lê Tuấn Anh
Phase 1: Tiến Trình Lịch Sử Double 11 (2009–2026)

Phase 1: Tiến Trình Lịch Sử Double 11 (2009–2026)

← Chương trước: Lộ Trình Nghiên Cứu 5 Phase | Mục lục Series | Chương tiếp theo: Phase 2: Kiến Trúc LDC & OceanBase → Answer-first: Lịch sử 17 năm phát triển Double 11 của Alipay ghi nhận sự nhảy vọt từ 200 TPS (năm 2009) lên 544.000 TPS (năm 2019), vượt qua khủng hoảng giới hạn Oracle năm 2012 để kiến tạo kiến trúc LDC và cơ sở dữ liệu phân tán OceanBase tự chủ. ...

2 tháng 5, 2026 · 7 phút · Lê Tuấn Anh
Phần 5: ISO 20022 pacs.008: Parse, Idempotency & Gateway Latency

Phần 5: ISO 20022 pacs.008: Parse, Idempotency & Gateway Latency

← Chương trước: Phần 4: Saga Pattern Giao Dịch Phân Tán | Mục lục Series | Chương tiếp theo: Phần 6: FAPI 2.0 & API Security → Answer-first: Xử lý tin điện thanh toán liên ngân hàng ISO 20022 (pacs.008) với bộ giải mã XML streaming trong Go tiêu tốn bộ nhớ O(1), khóa Idempotency phân tầng (Redis 5 phút đến Database 48 giờ) và tối ưu độ trễ chuyển đổi XML sang JSON dưới 10ms. ...

18 tháng 6, 2026 · 9 phút · Lê Tuấn Anh
Phần 4 — Vận hành: SRE & Chaos Engineering (2026)

Phần 4 — Vận hành: SRE & Chaos Engineering (2026)

← Chương trước: Phần 3 — Data Layer: Chuyển đổi từ Aurora sang TiDB (2026) | Mục lục Series | Chương tiếp theo: Phần 5 — Mở rộng Quy mô cho Lưu lượng Chiến dịch Tỷ Yên (2026) → Answer-first: Đội ngũ SRE của PayPay duy trì độ tin cậy 99.99% qua thực hành Chaos Engineering chủ động tiêm lỗi vào staging/production, thiết lập ngân sách lỗi (Error Budget) và xây dựng hệ thống quan sát OpenTelemetry toàn diện. ...

5 tháng 5, 2026 · 4 phút · Lê Tuấn Anh
Phần 6: FAPI 2.0: DPoP, mTLS & Sender-Constrained Tokens

Phần 6: FAPI 2.0: DPoP, mTLS & Sender-Constrained Tokens

← Chương trước: Phần 5: ISO 20022 & Payment Gateways | Mục lục Series | Chương tiếp theo: Phần 7: Streaming Fraud Detection với Flink → Answer-first: Chuẩn bảo mật tài chính FAPI 2.0 bảo vệ API ngân hàng mở (Open Banking) bằng cơ chế Sender-Constrained Tokens qua DPoP (Demonstrating Proof-of-Possession) và mTLS hai chiều, ngăn chặn triệt để nguy cơ đánh cắp token và tấn công Replay Attack. FAPI 2.0 DPoP Implementation Là Gì? Chuẩn Financial-grade API (FAPI) 2.0 bắt buộc sử dụng sender-constrained tokens thông qua DPoP hoặc mTLS để chống đánh cắp token. Triển khai mTLS trong Kubernetes làm tăng 1-3ms độ trễ handshake ban đầu, nhưng sẽ giảm xuống <0.1ms với connection pooling và HTTP Keep-Alive. ...

18 tháng 6, 2026 · 10 phút · Lê Tuấn Anh
Phần 6 — PayPay Trở thành AI-Native: LLM Hub & RAG (Tiêu Chuẩn 2026)

Phần 6 — PayPay Trở thành AI-Native: LLM Hub & RAG (Tiêu Chuẩn 2026)

← Chương trước: Phần 5 — Mở rộng Quy mô cho Lưu lượng Chiến dịch Tỷ Yên (2026) | Mục lục Series Answer-first: Nền tảng AI-Native của PayPay tích hợp LLM API Hub đa mô hình, đường ống RAG nội bộ và các agent tự trị nhằm tự động hóa quy trình phát hiện gian lận, chấm điểm tín dụng và nâng cao năng suất kỹ thuật trên quy mô lớn. ...

5 tháng 5, 2026 · 15 phút · Lê Tuấn Anh
Phase 4: Công Nghệ Chi Tiết — Middle Platform & CTU Risk Control

Phase 4: Công Nghệ Chi Tiết — Middle Platform & CTU Risk Control

← Chương trước: Phase 3: Quy Trình Vận Hành & Stress Testing | Mục lục Series | Chương tiếp theo: Phase 4 Deep Dive: SOFAStack, RocketMQ & Storage → Answer-first: Nền tảng Middle Platform (Trung Đài) chuẩn hóa nghiệp vụ thanh toán kết hợp hệ thống AI CTU (Central Transaction Unit) thực hiện chấm điểm rủi ro và ngăn chặn gian lận trên 8 chiều dữ liệu trong vòng dưới 100ms với tỷ lệ báo động giả dưới 0.1%. ...

2 tháng 5, 2026 · 13 phút · Lê Tuấn Anh
Phần 8: Viết PRD cho Core Banking — Hướng dẫn cho Developer

Phần 8: Viết PRD cho Core Banking — Hướng dẫn cho Developer

← Chương trước: Phần 7 — Tự xây dựng Hệ thống Mini Core Banking bằng Go | Mục lục Series Answer-first: Tài liệu yêu cầu sản phẩm (PRD) Core Banking đòi hỏi tính toán vẹn dữ liệu tuyệt đối: xác lập ranh giới CIF/CASA/Lending/GL, quy định kế toán kép SUM(Debits) = SUM(Credits), cơ chế kiểm soát 4 mắt Maker-Checker, và quy trình xử lý theo lô cuối ngày (EOD) bảo toàn số dư khả dụng. ...

27 tháng 5, 2026 · 10 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
Kiến trúc mở rộng PayPay Fintech 70 triệu user

Kiến Trúc PayPay: Bung Rộng Hệ Thống Thanh Toán Lên 70 Triệu User & 7.8 Tỷ Giao Dịch/Năm

Answer-first: Để xử lý 7.8 tỷ giao dịch/năm cho 70 triệu người dùng, PayPay chuẩn hóa hơn 200 microservices trên Kubernetes qua GitOps (ArgoCD), phân mảnh Kafka topic theo User ID kết hợp Redis SETNX bảo đảm idempotency tài chính, và thay thế MySQL bằng TiDB NewSQL phân tán hỗ trợ ACID đa node cùng TiFlash HTAP. 🇬🇧 Read the English version of this article on tanhdev.com PayPay vừa bấm nút chạy hồi tháng 10 năm 2018 thì đã đạt 10 triệu người dùng chỉ trong vỏn vẹn 3 tháng — tốc độ tăng trưởng kỷ lục chưa từng có tại thị trường fintech Nhật Bản. Đến năm 2025, nền tảng này đã cán mốc 70 triệu user đăng ký và xử lý 7.8 tỷ lượt thanh toán mỗi năm. Hỗ trợ cho sự tăng trưởng vượt bậc đó là một đội ngũ kỹ sư không chỉ mở rộng hạ tầng mà còn tái cấu trúc văn hóa kỹ thuật: từ chuẩn hóa dịch vụ (service standardization) và triển khai GitOps (GitOps-driven deployments) cho đến kiểm thử độ bền (chaos engineering) và ứng dụng AI phát hiện lừa đảo (fraud detection). ...

1 tháng 6, 2026 · 19 phút · Lê Tuấn Anh
Kiến trúc Core Banking Tài chính Vi mô: PRD & QA

Kiến trúc Core Banking Tài chính Vi mô: PRD & QA

🇬🇧 Read the English version of this article on tanhdev.com Answer-first: Hệ thống Core Banking tài chính vi mô yêu cầu thiết kế chuyên biệt cho mô hình vay nhóm JLG, lịch trả nợ linh hoạt theo chu kỳ tuần/tháng và cơ chế tính lãi kép EMI. Kiến trúc đảm bảo độ chính xác số học cấp ngân hàng và xử lý khóa sổ cuối ngày (EOD) dưới 10 phút. Xây dựng một Hệ thống Core Banking (CBS) cho một Tổ chức Tài chính Vi mô (MFI - Microfinance Institution) mang lại một tập hợp các thách thức kỹ thuật hoàn toàn khác biệt so với ngân hàng bán lẻ truyền thống. Trong khi các ngân hàng thương mại tập trung chủ yếu vào điểm tín dụng cá nhân và mạng lưới thẻ, tài chính vi mô lại vận hành dựa trên các giao dịch giá trị thấp với tần suất cao, cho vay theo nhóm (group-based lending), và thu nợ thực địa ngoại tuyến (offline field collections). ...

27 tháng 5, 2026 · 13 phút · Lê Tuấn Anh