微服務 vs 單體 (Microservices vs Monolith)

★★★★Studied

FromBuilding MicroservicesMicroservices PatternsThe Hard Parts

📚 From the Books

微服務 vs 單體 (Microservices vs Monolith)ConceptArchitecture Styles

微服務不是「比較進步」,是用部署與團隊的獨立性換取分散式系統的複雜度。多數系統應該從單體開始。

🧠 Core Ideas

TIP

問題不是「微服務還是單體」,是「我現在需要付分散式的稅,去買哪一種獨立性嗎?」

⚖️ Tradeoffs

什麼時候單體更好
  • 團隊小、領域邊界還不清楚時 → 單體迭代快、重構成本低。
  • 「模組化單體 (Modular Monolith)」可先取得清晰邊界,之後再依需要拆出服務。
拆分的判準
  • 沿業務能力 / DDD 限界上下文拆,而非技術分層。
  • 拆分點要讓「一起改的東西在一起」——避免一個需求要改五個服務。
  • 資料庫各自擁有,避免共享資料庫把服務又耦回去。

🔑 Takeaways

✍️ My Notes

No notes yet — jot your takeaways or Q&A here.

📖 Further Reading