Spring微服務
了解如何使用 Spring 和 Spring Boot 創建出色的微服務和 RESTful Web 服務。
概述
介紹
開發 RESTful Web 服務很有趣。 Spring Boot、Spring Web MVC、Spring Web Services 和 JPA 的結合使其變得更加有趣。創建微服務更加有趣。
本課程分為兩個部分 - RESTful Web 服務和微服務
架構正在朝向微服務邁進。
RESTful Web 服務是開發優秀微服務的第一步。 Spring Boot 與 Spring Web MVC(也稱為 Spring REST)結合,可以輕鬆開發 RESTful Web 服務。
在課程的第一部分中,您將學習為社交媒體應用程式開發資源的 RESTful Web 服務的基礎知識。您將學習如何使用多種功能來實現這些資源 - 版本控制、異常處理、文件 (Swagger)、基本身份驗證 (Spring Security)、過濾和 HATEOAS。您將學習設計 RESTful Web 服務的最佳實務。
在課程的這一部分中,您將使用 Spring(依賴管理)、Spring MVC(或 Spring REST)、Spring Boot、Spring Security(身份驗證和授權)、Spring Boot Actuator(監控)、Swagger(文件)、Maven(依賴管理)、Eclipse (IDE)、Postman(REST 服務客戶端)和Tomcat 嵌入式Web 伺服器。我們將幫助您設定其中的每一項。
在課程的第二部分中,您將學習微服務的基礎知識。您將了解如何使用 Spring Cloud 實現微服務。
在課程的這一部分中,您將學習如何在微服務之間建立通訊、實現負載平衡、擴展和縮小微服務。您還將學習使用 Spring Cloud Config Server 集中配置微服務。您將使用 Spring Cloud Sleuth 和 Zipkin 實作 Eureka 命名伺服器和分散式追蹤。您將使用 Zipkin 建立容錯微服務
你會學到
- 您將能夠開發和設計 RESTful Web 服務
- 您將使用 Spring Cloud Config Server 設定集中式微服務配置
- 您將了解如何實作 RESTful Web 服務的異常處理、驗證、HATEOAS 和過濾。
- 您將實現客戶端負載平衡(Ribbon)、動態擴充(Eureka Naming Server)和 API 閘道(Zuul)
- 您將學習使用 Spring Cloud Sleuth 和 Zipkin 實現微服務的分散式追蹤
- 您將使用 Zipkin 實現微服務的容錯
- 您將了解如何對 RESTful Web 服務進行版本控制
- 您將了解如何使用 Spring Boot Actuator 監控 RESTful 服務
- 您將了解如何使用 Swagger 記錄 RESTful Web 服務
- 您將了解設計 RESTful Web 服務的最佳實踐
- 使用 Spring Cloud Bus 交換有關配置更新的訊息
- 使用 Feign REST 用戶端簡化與其他微服務的通訊
逐步詳細信息
參考各個步驟
期望
- 你應該了解Java和Spring。
- 對開發 Web 應用程式有基本的了解是額外的好處,但不是強制性的。
- 對 Spring Boot 的基本了解是額外的好處,但不是強制性的。我們有單獨的部分來介紹 Spring Boot。
- 對 JPA 的基本了解是額外的好處,但不是強制性的。我們有單獨的部分來介紹 JPA。
- 您不需要有任何 Eclipse、Maven 或 Tomcat 的經驗。
- 我們將幫助您安裝 Eclipse 並啟動並執行 Maven 和 Tomcat。
安裝工具
- Eclipse 與嵌入式 Maven
- 郵差
- Git 用戶端 - https://git-scm.com/
- Rabbit MQ - https://www.rabbitmq.com/download.html
安裝 Eclipse 和嵌入式 Maven
- 安裝影片:https://www.youtube.com/playlist?list=PLBBog2r6uMCSmMVTW_QmDLyASBvovyAO3
- 用於安裝的 GIT 儲存庫:https://github.com/in28minutes/getting-started-in-5-steps
- PDF:https://github.com/in28minutes/SpringIn28Minutes/blob/master/InstallationGuide-JavaEclipseAndMaven_v2.pdf
安裝 Rabbit MQ
視窗
- https://www.rabbitmq.com/install-windows.html
- https://www.rabbitmq.com/which-erlang.html
- http://www.erlang.org/downloads
- 影片 - https://www.youtube.com/watch?v=gKzKUmtOwR4
蘋果
- https://www.rabbitmq.com/install-homebrew.html
運行範例
- 下載 zip 或克隆 Git 儲存庫。
- 解壓縮 zip 檔案(如果您下載了該檔案)
- 開啟命令提示字元並將目錄 (cd) 變更為包含 pom.xml 的資料夾
- 打開Eclipse
- 檔案 -> 匯入 -> 現有 Maven 專案 -> 導航到解壓縮 zip 的資料夾
- 選擇正確的項目
- 選擇 Spring Boot 應用程式檔案(搜尋@SpringBootApplication)
- 右鍵單擊該檔案並作為 Java 應用程式運行
- 你都準備好了
- 如需協助:使用我們的安裝指南 - https://www.youtube.com/playlist?list=PLBBog2r6uMCSmMVTW_QmDLyASBvovyAO3
圖表
故障排除
- 請參閱我們的故障排除指南 - https://github.com/in28minutes/in28minutes-initiatives/tree/master/The-in28Minutes-TroubleshootingGuide-And-FAQ
YouTube 播放清單 - 500 多個視頻
點擊這裡 - 30 多個播放列表,包含 500 多個有關 Spring、Spring Boot、REST、微服務和雲端的視頻
28分鐘內持續學習
in28Minutes 正在為您創建令人驚嘆的解決方案來學習 Spring Boot、全端和雲端 - Docker、Kubernetes、AWS、React、Angular 等 - 在這裡查看我們的所有課程