Mục lục

(E-commerce — case lớn nhất — là toàn bộ Phần 12; Search System đóng vai case tổng hợp của Phần 9.)


12 hệ thống, thiết kế từng bước theo đúng chuỗi tư duy của chương 00: Business → FR → NFR → Scale Estimation → Constraint → Bottleneck → Pattern → Trade-off → Production → Evolution. Không có sơ đồ cuối cùng cho sẵn — giá trị nằm ở quá trình ra quyết định.

Cách mỗi case study sẽ được viết

Mỗi bài bắt đầu từ một doanh nghiệp cụ thể với ràng buộc cụ thể (ngân sách, team, deadline), đi qua ước lượng bằng số, chỉ ra bottleneck đặc trưng của domain đó, rồi tiến hóa kiến trúc qua 2–3 mốc quy mô. Người đọc phải thấy được: cùng một domain, đổi một ràng buộc là đổi kiến trúc.

Danh sách và “bài toán định hình” của từng hệ

CaseBài toán định hình (bottleneck đặc trưng)Khái niệm trọng tâm
E-commerceTranh chấp tồn kho + flash sale spikeĐã viết trọn vẹn tại Phần 12
Social NetworkFan-out (1 post → N follower) + celebrity problemPush vs pull feed, hot key, cache đa tầng
BankingĐúng tuyệt đối + audit + compliance; throughput thấp một cách đáng ngạc nhiênLedger append-only, idempotency, reconciliation, DR khắt khe
FinTech (ví điện tử)Như banking + tích hợp bên thứ ba mong manh + scale tiêu dùngSaga cho giao dịch xuyên đối tác, 13.5 — 3rd party
Chat ApplicationTriệu kết nối dài (WebSocket) + thứ tự tin nhắn + presenceStateful connection layer, message ordering per-conversation, sync đa thiết bị
Video StreamingBăng thông là chi phí thống trị; ghi một lần đọc triệu lầnCDN là kiến trúc chứ không phải phụ kiện, transcode pipeline, adaptive bitrate
Ride HailingDữ liệu vị trí cập nhật liên tục + matching thời gian thực theo địa lýGeo-index, dữ liệu phù du (không cần durability), surge theo cell
SaaS PlatformMulti-tenancy: cô lập dữ liệu + noisy neighbor + tenant lớn gấp 10.000 lần tenant nhỏShared vs isolated tenancy, hot partition, per-tenant limit
AI PlatformGPU đắt + inference latency + throughput batchQueue cho batch, streaming cho chat, model versioning, cost-aware routing
URL ShortenerBài “nhỏ mà thâm”: đọc ≫ ghi 1000:1, latency là tất cảBài tập hoàn hảo cho 1.4 — estimation, cache, key generation
Notification SystemFan-out đa kênh + đối tác không tin được + không gửi trùngIdempotency, backlog, retry tổng hợp
Search SystemIndex lag vs độ tươi + relevance + tiếng ViệtToàn bộ Phần 9 trong hành động

Dùng phần này thế nào khi nó hoàn thành

Đừng đọc như đáp án. Với mỗi case: tự làm bước estimation và đoán bottleneck trước khi đọc tiếp — rồi so với bài. Khoảng cách giữa dự đoán của bạn và phân tích trong bài chính là thứ cần luyện; sự trùng khớp ngày càng tăng chính là “tư duy thiết kế hệ thống” đang hình thành.