我的出版書籍之《Spring響應式微服務》

當下互聯網行業飛速發展,快速的業務更新和產品迭代也給系統開發過程和模式帶來新的挑戰。在這個時代背景下,以Spring Cloud爲代表的微服務架構實現技術應運而生。微服務架構是一種分佈式系統,在具備業務、技術和組織等方面具備相應優勢的同時,也不得不面臨分佈式系統所固有的問題。如何確保微服務系統的即時響應性和服務彈性是我們構建微服務架構的一大挑戰。幸運的是,Spring 框架的開發人員已經創建了一個嶄新的、支持響應式的項目版本用來支持響應式微服務架構的設計和開發。通過構建響應式微服務架構,我們將在傳統微服務架構的基礎上提供即時響應性和服務彈性。

本書從響應式編程和微服務架構的基本概念開始展開。你將瞭解響應性的基本原理以及Spring 5框架所集成的Project Reactor響應式開發框架。同時,你將進一步學習如何構建響應式RESTful服務、如何構建響應式數據訪問組件、如何構建響應式消息通信組件、如何構建響應式微服務架構以及如何測試響應式微服務架構等核心主題。所有這些內容都將應用於一個精簡而又完整的示例項目,確保你能夠將所學到的技能付諸於實踐。

本書主要包含響應式微服務架構實現過程中所應具備的技術體系和工程實踐,在組織結構上分爲如下所示的8章內容。

  1. 直面響應式微服務架構。作爲全書的開篇,圍繞響應式微服務架構的概念和構建方式展開討論。通過對比傳統編程方法和響應式編程方法引出響應式編程的核心概念,並引用響應式宣言來闡述響應式系統所應該具備的基本系統特性和維度。同時,本章在介紹傳統微服務架構的基礎上,分析了響應式微服務架構的設計原則,然後對響應式編程和微服務架構進行了整合。
  2. 響應式編程模型與Reactor框架。本章全面介紹響應式編程模型並引出了響應式流規範,Reactor框架爲我們提供了一整套實現該規範的具體實現。我們在介紹Reactor框架中Mono和Flux這兩個核心組件的基礎上,進一步提供了一系列強大的操作符來操作這些組件。本章最後還對Reactor框架中的背壓機制做了簡單介紹,Reactor框架爲我們提供了四種背壓處理策略以滿足不同場景需求。
  3. 構建響應式RESTful服務。要想構建響應式微服務架構,首先需要構建單個響應式微服務。在Spring 5中引入了全新的響應式服務構建框架Spring WebFlux,支持使用註解編程模型和函數式編程模型兩種方式來構建響應式RESTful服務。本章基於Spring Boot,對Spring WebFlux框架做了全面介紹。
  4. 構建響應式數據訪問組件。對於響應式微服務架構而言,數據訪問也是構建全棧響應式系統的重要一環。爲此,Spring Data框架也專門提供了Spring Reactive Data組件用來創建響應式數據訪問層組件。在本章中,我們重點就Mongodb和Redis這兩個支持響應式特性的Nosql數據庫分別給出瞭如何使用Spring Reactive Data來實現響應式數據訪問的基本步驟和代碼示例。
  5. 構建響應式消息通信組件。本章內容圍繞構建響應式微服務架構的另一個重要主題展開討論,即響應式消息通信。我們使用Reactive Spring Cloud Stream框架來實現響應式消息通信組件。本章先從事件驅動架構和模型出發,引出了Spring Cloud家族中實現消息通信的Spring Cloud Stream框架。然後對Spring Cloud Stream進行升級,結合響應式編程模型全面介紹Reactive Spring Cloud Stream框架的使用方法。
  6. 構建響應式微服務架構。本章是全書的重點篇章,我們通過使用Spring Cloud框架來實現響應式微服務架構。我們從服務治理、負載均衡、服務容錯、服務網關、服務配置和服務監控等六大主題出發全面討論了響應式微服務架構的核心組件及其實現方案。對於每個組件的介紹,我們都包含了使用該組件的具體方法以及相應的代碼示例。同時,我們還使用專門的一節內容來介紹WebClient這一響應式服務調用的實現工具。
  7. 測試響應式微服務架構。本章中,我們首先介紹了初始化測試環境的準備工作,然後分別給出了測試響應式微服務架構中一系列獨立層組件的方法和示例,即從數據流層出發分別對基於響應式Mongodb的Repository層、Service層以及Controller層進行測試。
  8. 響應式微服務架構演進案例分析。本章作爲全書的最後一章,通過一個完整的案例分析全面介紹了構建一個響應式微服務系統的各個方面。在介紹該案例時,首先採用了傳統的微服務架構來實現該案例。然後,在傳統微服務架構構建完畢的基礎上,本章重點對如何向響應式微服務架構演進的方法和過程做了具體展開。我們首先需要更新基礎設施類服務,更爲重要的,我們需要完成對數據訪問方式、事件通信方式、服務調用方式的全面升級。這裏涉及到了響應式WebFlux、響應式Mongodb和Redis、響應式Spring Cloud Stream等響應式組件的使用方式和最佳實踐。

本書面向立志於成爲微服務架構師尤其是響應式微服務架構師的服務開發人員,讀者不需要有很深的技術水平,也不限於特定的開發語言,但熟悉Java EE常見技術並掌握一定異步編程模型和分佈式架構基本概念有助於更好的理解書中的內容。通過本書的系統學習,讀者將對響應式微服務架構的技術體系和實現方式有全面而深入的瞭解,爲後續的工作和學習鋪平道路。

更多內容可以關注我的公衆號:程序員向架構師轉型。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章