Giao diện
Microservices
Chia hệ thống thành các service độc lập: được gì, mất gì, và các pattern đi kèm.
Dàn ý
- Monolith, modular monolith, microservices: khi nào nên tách.
- Chia ranh giới service theo nghiệp vụ (DDD, bounded context).
- Database riêng cho mỗi service: không join chéo, chép dữ liệu qua event, báo cáo tổng hợp.
- Giao tiếp: đồng bộ (REST, gRPC) vs bất đồng bộ (event, message).
- Nhất quán giữa service: saga (choreography vs orchestration), outbox/inbox (MySQL chương 9).
- API gateway, service discovery, service mesh.
- Chịu lỗi: timeout, retry, circuit breaker (Hệ phân tán › Xử lý lỗi).
- Quan sát: distributed tracing, correlation id.