閱讀須知
本文適合希望從初級技能水平提升到高階技能水平的讀者閱讀。只要是對微服務感興趣,並且想在這方面獲得更多知識或者有更多想法的人們均可使用本書。
初級讀者,是指接觸或使用過微服務框架,有微服務應用經驗的軟體開發工程師、需求分析師、運維工程師等,同時也包括一些對微服務感興趣的學生。
中級讀者,是指有豐富開發經驗的軟體開發工程師、需求分析師、運維工程師等。這些讀者可以在本文中獲得更全面的認識,全面地、整體地、辯證地、系統化地認識微服務。
高階讀者,是指有豐富經驗的架構師和分析師。這些讀者可以透過本文從更深層次去理解微服務的本質和核心,以及如何遊刃有餘地解決實際工作中的架構問題。
本文也適合IT行業管理者,如CTO、CIO、技術總裁、技術總監、研發總監、資訊總監等。通過了解微服務的整個藍圖,IT管理者可以在企業或組織微服務體系建設中做出高質量的決策。
本文尤其適合那些在微服務領域有一定經驗的工程師,可滿足其需要進一步拓寬視野、提高層級的要求。
本文目錄主要內容本文主要包括5個部分:第1部分微服務體系概述、第2部分微服務技術體系、第3部分微服務業務體系、第4部分微服務管理體系和第5部分微服務體系建設實踐,共12章。
本文的講解順序:首先介紹了微服務體系的基礎知識,使讀者瞭解微服務體系不是一門技術,不是一個專案,也不是一種管理手段,而是一套體系,一個覆蓋了技術層面、業務層面和管理層面的綜合體;其次介紹了微服務的技術體系,這是技術話題,也是技術架構師或開發工程師比較喜歡的領域,主要講述了微服務的實現技術、微服務的技術架構和可供選擇的微服務技術框架;然後介紹了微服務的業務體系,主要從業務角度分析了微服務的架構,提出了業務微服務的概念並採用了一些架構來實現這一概念,包括領域驅動設計、六邊形架構、DCI架構等;接著介紹了微服務的管理體系,分別從組織、研發流程、規範、度量等管理方面說明如何支援微服務;最後的內容是針對產品或平臺進行微服務的規劃、設計、實施和運維活動及實踐等。
第1部分,微服務體系概述。這一部分是本書的綱要,包含兩個章節,分別是第1章和第2章。
第1章,微服務概述。首先從微服務的演化歷史開始描述;其次簡單介紹了微服務和微服務架構(MSA)的基本概念,以及MSA和 SOA 的比較;然後闡述了關於微服務的一些辯證關係;最後對微服務未來的方向做了一個探討性的論述。
第⒉章,微服務體系概況。首先介紹什麼是體系化;其次是採用微服務所期望達到的願景;然後從整體性、結構性、綜合性和動態性等體系化角度分析並形成微服務的體系化結構;接著闡述了微服務體系與雲原生架構的區別,以及微服務體系與API開放平臺的關係;最後簡述了微服務體系的生態系統。
第⒉部分,微服務技術體系。這一部分主要從技術角度來介紹微服務,包含3個章節,分別是第3~5章。
第3章,微服務技術體系及實現技術。主要從4個方面來講解,分別是微服務技術體系概述、微服務體系中的實現技術、整合平臺自動化工具和基礎設施環境。
第4章,微服務技術架構體系。首先介紹微服務技術架構體系概念,微服務技術架構體系包括微服務執行時的服務架構、基礎架構、後端架構等組成部分;其次分別介紹了不同架構的組成部分,重點介紹了微服務執行時的基礎架構,分別是服務發現和註冊元件、API閘道器元件、服務容錯元件、服務監控告警日誌元件、認證授權元件、統一配置管理元件等,詳細說明了這些元件的內容、原理、構成及其相關的解決方案;最後簡單分析了微服務技術架構的設計模式。
第5章,微服務技術框架體系。微服務技術框架的數量可以用車載斗量來形容。為了更好地區分這些框架,首先對技術框架進行了分類,主要包括開發型微服務基礎框架平臺、運維型微服務基礎框架平臺、Serverless型微服務基礎框架平臺、微服務開發框架平臺四大型別;然後把現階段一些常用的技術框架分門別類地適配上去,其中重點介紹了Netflix微服務框架、Spring Cloud微服務框架、Kubernetes微服務框架、AWS Lambda無服務基礎框架和 Spring Boot開發框架。
第3部分,微服務業務體系。這一部分主要從業務角度來描述微服務,包含兩個章節,分別是第6章和第7章。
第6章,微服務業務體系概述。首先介紹微服務業務體系的概念、業務微服務的5個特徵,以及微服務業務架構體系的定義;其次說明業務微服務的核心問題——邊界和顆粒度大小;最後詮釋業務微服務的內部構成、內部設計模式和外部關係整合。
第7章,業務微服務分析設計方法論。首先從總體說明業務邏輯概念,描繪業務場景;然後分別從普通服務模式、領域驅動設計模式、六邊形架構模式、Clean架構模式、DCI架構模式、CQRS 架構模式對業務微服務架構進行分析和設計。
第4部分,微服務管理體系。這一部分主要從管理角度描述微服務,包含3個章節,分別是第8~10章。
第8章,微服務管理體系概述。主要內容包括微服務應用的成熟度級別、微服務標準規範、微服務工具、微服務文化和度量指標、微服務的組織機構和開發/運維流程等。重點介紹了微服務應用的成熟度級別、微服務應用的“12要素”原則、微服務標準規範和微服務的8個主要度量指標。
第9章,微服務應用的組織、人員和文化。主要講述在微服務的影響下,對組織、人員和文化應進行適當調整。
第10章,微服務的開發和運維流程。圍繞著DevOps 來描述基於微服務架構下的開發和運維流程的變化和支撐。
第5部分,微服務體系建設實踐。這一部分的內容是主要針對產品或平臺進行微服務改造的規劃、設計、實施和運維活動及實踐,包含兩個章節,分別是第11章和第12章。
第11章,傳統架構遷徙到微服務架構。主要講述傳統架構遷徙到微服務架構的必要性、需要考慮的問題、策略和實施流程,包括現階段大部分產品或平臺所面臨的問題和解決方案。
第12章,新建系統的業務微服務全生命週期過程。主要講述業務微服務全生命週期過程,包括產品或平臺微服務化需要考慮的問題和建設步驟。
希望本文能夠幫助到大家來建設自己的微服務體系,提高自己的技術深度和廣度,讓自己變得更加有價值。