🌧️ 與單體系統的差異
單體系統
分為三個部分
- Database
- 後端服務
- 前端畫面
專案發展過程
- 所有商業邏輯、開發、測試、部屬,都還算方便
- 為了實現各式需求,因此加入了許多商業邏輯模組
- 手機設備不斷進步,前端已經不被侷限於 Web 形式
中後期結果
整個專案變得很肥大
影響
- 只需要修改一個小功能而已,為了部屬需要中斷其他功能的運作
- 每個功能模組適用的場景、併發量、消耗的資源都不盡相同
- 維護成本會不斷提升,越來越難控制
微服務
解決的問題
系統被拆為多個服務,每個服務都可以獨立部屬與擴充
每個服務都運作在自己的 Process 裡面,所以不會影響到其他服務
由於每個服務都是獨立部屬的,所以可以很精準的評估服務的性能