2019獨角獸企業重金招聘Python工程師標準>>>
(StuQ 微服務技能圖譜)
2課程簡介
本課程分為基礎篇和高級篇兩部分,旨在通過完整的案例,呈現微服務的開發、測試、構建、部署、運維等實踐,幫助學員了解微服務的核心、以及實施過程中的挑戰與應對方案。
基礎篇將使用Spring Boot、Spring Cloud以及Docker,構建基于微服務架構的活動報名系統。同時,使用Netflix OSS構建服務的支持組件,包括集中化配置中心、服務注冊與發現、API網關、容錯處理等支撐性服務組件。
高級篇將關注微服務的測試,服務安全、異步任務系統、日志聚合、監控告警以及持續交付流水線等高級話題,為微服務規模化實施提供指導意見。
3適用人群
-
有1年以上的Java編程經驗
-
熟悉Spring框架
-
了解Gradle構建工具
-
了解持續集成實踐
-
對微服務架構實踐感興趣
4教學目標
通過本課程,您不僅能了解微服務架構的本質,也將學習到如何使用Spring Boot、Spring Cloud 構建微服務系統(包括REST/HAL、服務注冊、服務發現、容錯處理、API網關、中心化配置以及服務的安全處理等);同時,也將學習如何建立完整的微服務生態體系,包括持續交付流水線、部署、運維、監控以及告警等機制。
基礎篇目標
-
學習掌握微服務架構的概念與本質
-
使用Spring boot/Spring Cloud 構建活動報名系統
-
使用Netflix OSS構建微服務支撐組件(服務注冊發現、集中化配置中心、API網關、容錯處理)
-
使用Docker發布服務
-
使用Docker-Compose在開發環境中運行多個服務
高級篇目標
-
學習掌握微服務的測試策略與PACT測試
-
學習掌握微服務的安全機制與OAuth2.0實現
-
學習掌握微服務間的異步通信機制
-
學習了解微服務的監控與告警
-
學習掌握微服務架構的日志聚合
-
構建微服務的持續交付流水線
5課程內容
基礎篇課程大綱
微服務架構從 0 到 1
-
微服務架構介紹
-
微服務架構的本質與優勢
-
微服務與SOA
-
微服務的設計原則
基于微服務構建活動報名系統
-
需求理解與分析
-
技術選型(Java/Spring Boot/Spring loud/REST/HAL/MongoDB)
-
服務定義與劃分
-
服務支撐組件介紹(服務注冊,集中化配置,斷路器,服務網關)
-
思考/練習
Spring Boot 應用實踐
-
Spring Boot?介紹
-
Spring Boot的核心功能
-
Spring Boot Demo
-
練習
Spring Cloud 應用實踐
-
Spring Cloud?介紹
-
Spring Cloud的核心功能
-
Spring Cloud Demo
-
練習
REST/HAL 應用實踐
-
REST?介紹
-
HAL?介紹
-
為什么使用HAL
-
HAL Browser 實踐
Docker?應用實踐
-
Docker介紹
-
Docker的常用命令
-
構建Dockerfile
-
使用Docker-compose
構建第一個微服務
-
使用Spring-Data-REST實現Event-Service服務
-
使用HAL完成服務間同步通信
-
使用HAL-Browser瀏覽服務接口
-
使用MongoDB存儲數據
-
使用Docker-compose運行服務
-
構建Dockerfile
-
練習
微服務的集中化配置(centralized-config)
-
為什么要集中化配置
-
集中化配置的實現原理與方式
-
使用Spring Cloud Config 實現集中化配置
-
使用Spring Cloud Bus與RabbitMQ同步多服務配置
-
Spring Cloud Config Demo
-
練習
微服務的注冊與發現(service-discovery)
-
為什么要服務注冊與發現
-
服務注冊與服務發現的實現方式
-
使用Netflix Eureka/Spring Cloud實現服務注冊與發現
-
使用Netflix Ribbon/Spring Cloud實現客戶端負載均衡
-
使用Netflix Feign/Spring Cloud實現申明式REST調用
-
練習
微服務的容錯處理(circurt-breaker)
-
微服務下的可用性與故障蔓延(Failure Cascading)
-
斷路器模式的原理與實現
-
使用Netflix Hystrix/Spring Cloud實現容錯
-
使用Netflix Turbie實現監控聚合
-
練習
構建微服務網關
-
為什么需要微服務網關
-
微服務網關的實現方案
-
使用Netflix Zuul實現微服務網關
-
練習
微服務架構與實踐總結
-
微服務的發布與部署
-
基于微服務的活動報名系統
-
練習
高級篇課程大綱
微服務的測試
-
測試金字塔
-
測試策略與實現
-
集成測試與契約測試
-
基于消費者驅動的契約測試PACT
-
使用JVM-PACT構建契約測試
-
練習
微服務的安全
-
微服務下安全的實現方式
-
使用HTTPS加密傳輸內容
-
OAuth2.0綜述
-
使用Spring Cloud Security實現活動報名
-
練習
微服務間的通信
-
服務間的同步通信
-
服務間的異步通信
-
使用Jesque完成報名后的通知
-
在活動報名系統中整合Jesque
-
練習
微服務的監控與告警
-
服務的監控與告警綜述
-
微服務監控與告警常用方案
-
使用Prometheus實現服務監控
-
在活動報名系統中整合Prometheus
-
服務告警
-
練習
微服務的日志聚合
-
為什么要日志聚合
-
日志聚合的常用技術方案
-
使用ETL實現服務的日志聚合與管理
-
使用Docker-compose運行ELK
-
在活動報名系統中整合ELK
-
練習
構建微服務的持續交付流水線
-
持續集成
-
持續交付
-
Jenkins2.0介紹
-
構建持續交付流水線
-
練習
微服務的依賴管理
-
可視化服務依賴圖
-
練習
微服務架構與實踐總結
-
基于微服務的活動報名系統
-
微服務架構總結
?
http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994360&idx=3&sn=d11399313a76e3367453e6e24982972d&chksm=bdbf0eeb8ac887fd031b55a2a407345a9a79fe1cc9366751fcf91ffb77ecc77b7e23300bfd8c&mpshare=1&scene=1&srcid=1011ve1uUq6YNm4WGL19oRPR#rd