Ebook Các Hệ Thống Phân Tán Trong Go - Hướng Dẫn Hoàn Chỉnh Để xây dựng Các Hệ Thống Cloud-Native Distributed Bằng Go [Ấn Bản Lần 1, 6/2026] [PDF, EPUB] [8837E]
Build một cloud-native distributed system bằng ngôn ngữ Go, tích hợp authentication, database, Kafka, gRPC, circuit breaker và distributed tracing. Mỗi chương sẽ dạy một design pattern cụ thể và trích xuất nó thành một nền tảng SDK có thể tái sử dụng. Đến chương cuối cùng, bạn sẽ có sáu service có thể triển khai, một platform SDK hoàn chỉnh và các pattern cần thiết để xây dựng hệ thống tiếp theo nhanh chóng hơn.
Mỗi Go developer cuối cùng đều phải đối mặt với một thời điểm: một binary đơn lẻ không còn đủ đáp ứng nữa. Bạn cần nhiều service. Chúng cần authenticate, persist data, communicate và tiếp tục hoạt động ổn định khi có sự cố xảy ra. Bạn đã đọc về định lý CAP. Bạn hiểu những ảo tưởng về distributed computing. Nhưng vào lúc 2 giờ sáng, khi Kafka consumer của bạn đang tích tụ độ trễ (lag) và các context deadline của bạn liên tục báo lỗi quá hạn, lý thuyết lúc đó sẽ chẳng giúp ích gì cả.
"Các Hệ Thống Phân Tán Trong Go" sẽ lấp đầy khoảng trống đó. Được đúc kết từ kinh nghiệm thực tế của tác giả trong việc vận hành các cloud-native distributed system trên môi trường production, cuốn sách này xây dựng một hệ thống hoàn chỉnh từng bước một - từ authentication, database, message queues, gRPC, circuit breaker đến distributed tracing. Mỗi chương đều giảng dạy một pattern, sau đó extract nó thành một platform SDK có thể tái sử dụng. Đến chương 15, bạn sẽ sở hữu một hệ thống gồm sáu service có thể triển khai thực tế và một SDK giúp việc xây dựng service tiếp theo trở nên dễ dàng hơn bao giờ hết.
Những gì bạn sẽ xây dựng:
- ✓ Các HTTP service với composable middleware (không cần dùng framework).
- ✓ JWT authentication với ECDSA signing và các pluggable auth agent.
- ✓ PostgreSQL access với các zero-downtime migration và outbox pattern.
- ✓ Các Kafka producer & consumer với backpressure & dead-letter queue.
- ✓ gRPC service-to-service call với retry, timeout & circuit breaker.
- ✓ Distributed consistency với saga, idempotency key và reconciliation.
- ✓ Observability: structured logging (slog), Prometheus metrics, OpenTelemetry tracing.
- ✓ Các test dựa trên infrastructure thực tế với testcontainer và chaos pattern.
- ✓ Các Kubernetes deployment manifest cho cả sáu service.
Mỗi ví dụ code đều hoàn chỉnh và self-contained.
Đây là cuốn sách dành cho những Go developer đã biết cách build một service nhưng chưa từng built một hệ thống toàn diện. Nếu bạn từng copy-paste middleware mà mình chưa hiểu rõ, hoặc từng bất lực nhìn lỗi "context deadline exceeded" trải dài qua năm service mà chẳng biết deadline đó xuất phát từ đâu, thì đây chính là cuốn sách dành cho bạn.
Mục lục:
- ✓ Chương 01: Tại sao lại là hệ thống phân tán? Chi phí của Coordination.
- ✓ Chương 02: Concurrency như các Distributed System thu nhỏ.
- ✓ Chương 03: Hai Service, Một Queue.
- ✓ Chương 04: HTTP Services & Middleware Chains.
- ✓ Chương 05: Authentication & JWT Across Services.
- ✓ Chương 06: Database Access & Migration.
- ✓ Chương 07: Context Propagation - Sợi dây kết nối mọi thứ.
- ✓ Chương 08: Message Queues chuyên sâu - Kafka, Backpressure & Consumer Groups.
- ✓ Chương 09: Service-to-Service Calls - gRPC, Protobuf, Retry & Circuit Breaker.
- ✓ Chương 10: Orchestration - Parallel Flow & Fan-Out.
- ✓ Chương 11: Distributed Consistency trong Thực tế.
- ✓ Chương 12: Observability - Logging, Metrics & Tracing.
- ✓ Chương 13: Testing các Distributed System.
- ✓ Chương 14: Configuration & Secrets.
- ✓ Chương 15: Capstone - Một Hệ thống hoàn chỉnh.
- ✓ Phụ lục A: Tài liệu tra cứu nhanh về Go Concurrency.
- ✓ Phụ lục B: File & Object Storage Abstraction.
- ✓ Phụ lục C: CLI Tooling cho vận hành.
