1

什麼是微服務(Microservices),可以喫嗎?

2

好像不行欸...

 3

啃啃看好了

 4  

好重哦...可以幫我拿走嗎

 

這本書是我進入研究所實驗室第一本買來讀的書

 

微服務 一羣協同運作的小型自主服務(autonomous service)

-小巧,並且專注於做好一件事

-自主性

 

由於我參加實驗室的ezScrum專案

這個系統的程式碼有幾十萬行,已經大到很難管理

所以團隊已經陸續地將這個系統拆成數個微服務

而未來也將會持續這個工程

想要分解既有的單體式系統建構微服務之前

我想我有需要了解微服務到底是怎麼一回事

 

坦白說這本書我看得有些喫力

但在這閱讀這本書時我和我的同伴Jack採用每日讀書會方式進行

才讓我們透過彼此分享更瞭解這本書的內容

這本書談的範圍很廣,包括

  -如何塑模服務

  -整合

  -拆分單體式系統

  -部署

  -測試

  -監控

  -資訊安全

  -Conway定律與系統設計

  -大規模的微服務

  -全部組織起來

 

這本書聚焦在觀念上,而沒有深入談技術層面

所以在閱讀上會覺得有點抽象化,但卻可以讓你對於微服務的整個架構有基本認識

而實作細節我想可能還是需要透過其他書籍來補足

 

微服務的主要好處

    -技術異質性-可以決定針對每一個服務使用不同的技術

  -彈性-不會因為某個服務壞了,而整個系統不運作

  -擴展-可以只擴展需要擴展的服務

  -容易部署

  -組織調校-處理較小程式碼基礎的較小團隊往往更具生產力

  -組合性-功能透過不同的方式,針對不同的目的被使用

  -最佳化可替換性-微服務通常是這般大小,重寫或完全移除它的障礙是非常低的

 

微服務的兩大原則(構成好服務的關鍵)

 

     鬆散耦合-更改一個服務不會波及另一個服務

    ☆高度內聚-行為聚集在一起,無關的行為則分處於不同的地方

 

我必須坦承地告訴你,我並沒有閱讀完這本書(但快看完了)

但是我對微服務的確有更深的認識,相信總有一天我會重拾這本書的

「微服務架構具有諸多迷人特質,然而,通往它的路途滿布荊棘與陷阱,必須謹慎提防。

這本書將協助你釐清這條道路是否適合你,以及如何避開旅途上那些惱人的圈套。」


— Martin Fowler
首席科學家,ThoughtWorks

相關文章