Bỏ qua để đến nội dung
Knowledge Hub

Architecture Cơ bản

“Code đang rối, hay là tách microservice?” trộn hai vấn đề. Tổ chức code và đơn vị triển khai là hai trục độc lập: một deployment vẫn có thể có module rõ ràng, và nhiều service vẫn có thể dính chặt nếu luôn phải deploy cùng nhau.

Thứ tự Bài Câu hỏi nó trả lời
1 Monolith, modular monolith, microservices Nên tách process chưa? Tín hiệu nào đo được? Ép ranh giới module bằng gì?
2 Bounded context Đâu là nơi một model còn nhất quán? Các context nối với nhau theo pattern nào?
3 Hexagonal & clean architecture Khi nào đáng tách lõi nghiệp vụ khỏi framework? Port, adapter, dependency rule và cái giá phải trả?
4 CQRS và event sourcing Khi nào read model riêng đáng làm, khi nào event sourcing đáng cái giá của nó? Projection, snapshot và xoá dữ liệu cá nhân hoạt động thế nào?
  • Bài 1 hỏi “tách thành mấy deployment” và cho bảng so sánh ba kiểu kiến trúc cùng các tín hiệu quyết định (co-change, chờ deploy, tải lệch).
  • Bài 2 hỏi “ranh giới model nằm ở đâu”: phân biệt subdomain với bounded context, vẽ context map, và tách Published Language (phía upstream) khỏi ACL (phía downstream).