《微服務設計》第 5 章 分解單塊系統
- 2019 年 10 月 8 日
- 筆記
第 5 章 分解單塊系統
5.1 關鍵是接縫
- 從接縫處可以抽取出相對獨立的一部分程式碼,對這部分程式碼進行修改不會影響系統的其他部分。識別出接縫不僅僅能夠清理程式碼庫,更重要的是,這些被識別出的接縫可以成為服務的邊界
5.2 分解MusicCorp
5.3 分解單塊系統的原因
5.3.1 改變的速度
- 我們可能會對庫存管理方面的程式碼做大量修改。所以如果現在把倉庫接縫抽出來作為一個服務,使其成為一個自治單元,那麼後期開發的速度將大大加快
5.3.2 團隊結構
- MusicCorp 的交付團隊事實上分布在兩個不同的地區,一個團隊在倫敦,另一個在夏威夷(有些人太舒服了!)。最好能把夏威夷團隊維護的大部分程式碼分離出來
5.3.3 安全
- MusicCorp 有安全審計的機制,並且決定對敏感資訊做更加嚴密的保護
5.3.4 技術
- 維護推薦系統的團隊研究出了一種新的演算法,這種演算法使用了 Clojure 語言中邏輯式編程的庫,並且認為這能夠大大改善我們的服務
5.4 雜亂的依賴
- 另一個需要考慮的點是,這部分程式碼與系統剩餘部分之間的依賴有多亂
書
- 《修改程式碼的藝術》