膜拜!!阿里p8架構師耗盡多年心血終於整理分享出精通SpringCloud微服架構文件太不容易了!

程式設計師高階碼農1發表於2020-11-05

前言

Spring Cloud是微服務架構開發的完美解決方案,它是一套分散式服務治理的框架,專注於全域性微服務協調整理,可以將各個單獨的微服務整合並管理起來,為各個微服務之間提供配置管理、服務發現、斷路器、路由、訊息代理、事件匯流排、決策競選、分散式會話等整合服務。

Spring Cloud本身不提供具體功能性的操作,更專注於服務之間的通訊、熔斷和監控等,因此就需要很多元件來支援完整功能。

開發、部署和運營雲應用程式應該像本地應用程式一樣簡單。這應該是任何雲平臺、庫或工具背後的管理原則。Spring Cloud可以輕鬆地為雲開發JVM應用程式。

本文將介紹Spring Cloud並幫助開發人員掌握其功能。

本文首先介紹如何配置Spring Cloud伺服器並執行Eureka伺服器以啟用服務註冊和發現;然後再深入剖析與負載均衡和斷路相關的技術,包括利用Feign客戶端的所有功能;

最後討論和研究高階主題,包括如何為Spring Cloud實現分散式跟蹤解決方案並構建訊息驅動的微服務架構。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

本文將帶大家從零開始一步步精通springcloud微服務架構,能夠靈活運用到工作中,不斷地提升自己的技術深度和寬度,讓自己變得更有價值,也希望本文能夠幫助到大家的學習!!

目錄

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

 

 

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

主要內容

本文詳細闡述了與Spring Cloud微服務框架相關的基本解決方案,主要包括微服務簡介、使用微服務的Spring、Spring Cloud概述、服務發現、使用Spring Cloud Config進行分散式配置、微服務之間的通訊、高階負載均衡和斷路器、使用API閘道器進行路由和過濾、分散式日誌記錄和跟蹤、其他配置和發現功能、訊息驅動的微服務、保護API的安全、測試Java微服務、Docker支援、雲平臺上的Spring微服務等內容。

本文的寫作思路明確,結構簡單易懂。全文共分為3個部分:第一部分是“微服務架構和Spring Cloud專案基礎知識”,包括第1章~第3章,詳細介紹了微服務、Spring Boot和Spring Cloud的基礎知識。

第1章“微服務簡介”,將介紹微服務架構、雲環境等。讀者將學習並理解基於微服務的應用程式和一體化應用程式之間的區別,同時瞭解如何遷移到微服務應用程式。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第⒉章“使用微服務的Spring”,將介紹Spring Boot框架。本章將詳細說明如何有效地使用Spring Boot框架來建立微服務應用程式。此外還將介紹使用 SpringMVC註解建立REST API、使用Swagger2提供API文件,以及使用Spring Boot Actuator端點公開執行狀況檢查和指標資料等主題。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第3章“Spring Cloud概述”,將簡要介紹作為Spring Cloud一部分的主要專案。它將側重於說明Spring Cloud實現的主要模式並將它們分配給特定專案。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

本文的第二部分是“微服務架構常見元素和Spring Cloud實現”,包括第4章一第13章,詳細介紹了Spring Cloud各個元件的配置和應用。

第4章“服務發現”,將使用Spring Cloud Netflix Eureka描述服務發現模式。本章將詳細說明如何在獨立模式下執行Eureka伺服器,以及如何使用對等副本執行多個伺服器例項。此外還將介紹如何在客戶端啟用發現並在不同區域中註冊這些客戶端。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第5章“使用Spring Cloud Config進行分散式配置”,將詳細介紹如何在應用程式中使用Spring Cloud Config進行分散式配置。本章將說明如何使用Spring CloudBus啟用屬性源的不同後端儲存庫並推送更改通知。通過比較發現第一個載入程式和配置第一個載入程式方法,詳細說明了發現服務和配置伺服器之間的整合。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第6章“微服務之間的通訊”,將描述參與服務間通訊的最重要元素:HTTP客戶端和負載均衡器。本章將詳細介紹如何在有或沒有服務發現的情況下使用Spring RestTemplate、Ribbon和Feign客戶端。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第7章“高階負載均衡和斷路器”,將描述與微服務之間的服務間通訊相關的更高階主題。本章將詳細介紹如何使用Ribbon客戶端實現不同的負載均衡演算法,使用Hystrix啟用斷路器模式並使用Hystrix儀表板監控通訊統計資訊。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第8章“使用API閘道器進行路由和過濾”,將比較用作Spring雲應用程式的API閘道器和代理的兩個專案:Spring Cloud Netlix Zuul和Spring Cloud Gateway。本章將詳細介紹如何將它們與服務發現整合,並建立簡單而更高階的路由和過濾規則。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第9章“分散式日誌記錄和跟蹤”,將介紹一些流行的工具,用於收集和分析由微服務生成的日誌記錄和跟蹤資訊。本章將說明如何使用Spring Cloud Sleuth附加跟蹤資訊和關聯訊息,此外還將執行與Elastic Stack整合的示例應用程式,以便傳送日誌訊息,並使用Zipkin來收集跟蹤的資訊。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第10章“其他配置和發現功能”,將介紹兩種用於服務發現和分散式配置的流行產品:Consul和ZooKeeper。本章將詳細說明如何在本地執行這些工具,並將Spring Cloud應用程式與它們整合在一起。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第11章“訊息驅動的微服務”,將指導開發人員如何在微服務之間提供非同步的、訊息驅動的通訊。本章將詳細介紹如何將RabbitMQ和ApacheKafka訊息代理與Spring Cloud應用程式整合,以實現非同步一對一和釋出/訂閱通訊方式。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第12章“保護 API的安全”,將描述保護微服務的各種方法。本章將實現一個由所有先前引入的元素組成的系統,這些元素通過SSL相互通訊。此外還將詳細說明如何使用OAuth2和JWT令牌來給傳入API的請求授權。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第13章“測試Java微服務”,將描述微服務測試的不同策略。它將側重於演示由使用者驅動的契約測試,這尤其適用於基於微服務的環境。此外還將介紹如何使用Hoverfly、Pact、Spring Cloud Contract、Gatling 等框架來實現不同型別的自動化測試。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

本文的第三部分是“Docker支援和Spring Cloud平臺”,包括第14章~第15章,詳細介紹了Docker容器、Pivotal Cloud Foundry和Heroku雲平臺。

第14章“Docker支援”,將簡要介紹Docker。它將側重於描述最常用的 Docker命令,這些命令用於在容器化環境中執行和監視微服務。此外還將詳細說明如何使用流行的持續整合伺服器(Jenkins)構建和執行容器,並將它們部署在Kubernetes平臺上。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

第15章“雲平臺上的Spring 微服務”,將介紹兩個支援Java應用程式的流行雲平臺:Pivotal Cloud Foundry和Heroku。本章將詳細說明如何使用命令列工具或Web 控制檯在這些平臺上部署、啟動、擴充套件和監視應用程式。

阿里p8架構師整理分享精通SpringCloud微服架構文件

 

這份【精通SpringCloud微服務架構】共有379頁,需要完整版的朋友,可以轉發此文關注小編,掃碼獲取!!

總結

接下來我們們總結一下本文介紹的內容:

本文介紹的Spring Cloud 的可用元件及其主要功能包括:Spring Cloud Netflix Eureka(服務發現)、Spring Cloud Config(分散式配置)、Spring RestTemplate和Feign客戶端(服務間通訊)、Ribbon(負載均衡演算法)、Hystrix(斷路器模式和儀表板監控)、Spring Cloud Netlix Zuul(路由和過濾)、Spring CloudSleuth(分散式服務跟蹤)、Consul和ZooKeeper(服務發現和分散式配置)、RabbitMQ和Apache Kafka(訊息代理)、Spring Cloud Contract(契約測試)、Gatling(自動化測試)﹑Jenkins(持續整合伺服器)和Kubernetes平臺等。

此外,本文還介紹了Docker容器和兩個支援Java應用程式的流行雲平臺:Pivotal Cloud Foundry和Heroku。

相信在閱讀本文之後,讀者會對Spring Cloud和Spring Boot框架的應用和開發有一個高屋建瓴的認識,並掌握各個元件的應用技巧,熟練駕馭微服務應用程式的開發。

希望大家能夠不斷地提升自己的技術深度和廣度,努力成就更好的自己!

相關文章