文章目錄
- 服務粒度
- 拆分方法
- 基礎設施
- 小結
上一篇我們談了實施微服務需要避免踩的陷阱,簡單提煉為:
- 微服務拆分過細,過分強調“small”。
- 微服務基礎設施不健全,忽略了“automated”。
- 微服務并不輕量級,規模大了后,“lightweight”不再適應。
針對這些問題,我們看看微服務最佳實踐應該如何去做,本篇是微服務架構最佳實踐的方法篇,下一篇是基礎設施篇。
服務粒度
針對微服務拆分過細導致的問題,我建議基于團隊規模進行拆分,類似貝索斯在定義團隊規模時提出的“兩個披薩”理論(每個團隊的人數不能多到兩張披薩都不夠吃的地步),分享一個我認為微服務拆分粒度的“三個火槍手”原則,即一個微服務三個人負責開發。當我們在實施微服務架構時,根據團隊規模來劃分微服務數量,如果業務規繼續發展,團隊規模擴大,我們再將已有的微服務進行拆分。例如,團隊最初有 6 個人,那么可以劃分為 2 個微服務,隨著業務的發展,業務功能越來越多,邏輯越來越復雜,團隊擴展到 12 個人,那么我們可以將已有的 2 個微服務進行拆分,變成 4 個微服務。
<