微服務架構-介紹

之前在某年會的有大神提到微服務系統架構,最近還滿受到大家的關注,在好奇心作祟下買了建構微服務:設計細微化的系統這本來閱讀,如果想更進一步了解微服務,還滿推薦這本的,裡面介紹微服務的優缺點及如何建造微服務架構,包含如何設計、導入、系統重構拆解、部署、測試和監控等等的相關實務經驗。

什麼是微服務?

微服務是一種系統架構,是有一群獨立自主運作的小型應用服務,而小型服務之間透過API方式進行溝通,以協同合作方式組合出大型應用服務,在Martin Fowler的這一篇文章有詳細的說明。

Alt text 圖來自於: http://martinfowler.com/articles/microservices.html

優勢

缺點及面臨問題

總結

微服務並不是能萬吃的系統架構,因具有分散式所帶來的複雜度是需要去克服又有高度實作難度,如果要從Monolithic system 要演進成微服務系統,必須要有完善的CI(Continuous Integration)、CD (Continous Delivery)、虛擬化技術和系統監控,才較享有微服務獨立自主性的優勢。

PS 小弟第一次寫文章,有錯誤請指證