18.2 — 1. Khi nào không nên microservices?
Mục tiêu bài học
- Nắm được ý chính của bài và mối liên hệ với module.
- Áp dụng được kiến thức vào bối cảnh CRM/.NET backend.
- Sẵn sàng chuyển sang bài kế tiếp với nền tảng chắc chắn.
Nội dung bài học
Nếu team < 5, chưa có CI/CD ổn định, chưa có observability — modular monolith + bounded context rõ thường nhanh hơn.
Dấu hiệu đã đủ “đau” để tách:
- Scale khác nhau theo workload (notification spike so với core API).
- Release cadence khác nhau giữa các phần (billing compliance so với CRM UI API).
- Team sở hữu rõ ràng theo domain (Conway’s Law).
Bài tập áp dụng
- Tóm tắt bài học bằng ngôn ngữ của bạn.
- Liên hệ nội dung với một tình huống thực tế trong dự án.
- Đề xuất một cải tiến cụ thể sau khi học bài này.
Tự kiểm tra
- Bạn có thể giải thích lại nội dung chính trong 2 phút không?
- Bạn có ví dụ áp dụng thực tế chưa?
- Bạn biết bước tiếp theo cần học/triển khai là gì không?
Kết luận
Hoàn thành bài này giúp bạn có góc nhìn đầy đủ hơn trước khi đi tiếp trong module.
Điều hướng
- Bài trước: 18.1 — Module Orientation
- Bài tiếp theo: 18.3 — 2. Service decomposition
- Về module: Trang mục lục