寫在前面
成爲一名架構師幾乎是每個程序員的夢想。而微服務架構則是當今架構領域最受關注的話題。掌握微服務架構技術棧相關技能,是從一名普通程序員到資深架構師的必經之路。
互聯網時代,企業在瞬息萬變的市場贏得和保持競爭優勢的核心在於持續創新。業界前沿互聯網公司的實踐表明,微服務架構 (Microservices Architecture) 是企業應對業務複雜性,支持大規模持續創新行之有效的架構手段。
微服務架構作爲一種漸進式的演進架構,自提出以來便被互聯網企業和傳統企業所重視和採用。微服務架構所涉及的知識廣泛,其學習曲線相對陡峭,其中架構落地、網關、監控等技術問題是常見的挑戰。
推薦各位老鐵閱讀學習【SpringCloud與Docker微服務架構實戰】,需要電子版的老鐵 請轉發+關注,然後私信回覆 “微服務” 獲得免費領取方式。
內容介紹
微服務架構是當前軟件開發領域的技術熱點。它在各種博客、社交媒體和會議演講上的出鏡率非常之高,筆者相信大家也都聽說過微服務這個名詞。然而微服務似乎優勢非常虛幻的——我們找不到微服務的完整定義,以至於很多人認爲是在炒作概念。
那麼什麼是微服務呢?它解決了哪些問題?它又具有那些特點?諸多問題,本書都將爲你一 一解答。同時微服務理論性的內容,互聯網上已有很多,本書不會過多提及。筆者會盡量把篇幅花在微服務的具體實戰內容上。
內容目錄
需要電子版的老鐵 請轉發+關注,然後私信回覆 “微服務” 獲得免費領取方式。
1、微服務架構概述
- 1.1單體應用架構存在的問題
- 1.2如何解決單體應用架構存在的問題
- 1.3什麼是微服務
- 1.4微服務架構的優點與挑戰
- 1.5微服務設計原則
- 1.6如何實現微服務架構
2、微服務開發框架——Spring Cloud
- 2.1Spring Cloud簡介
- 2.2Spring Cloud特點
- 2.3Spring Cloud版本
3、開始使用Spring Cloud實戰微服務
- 3.1Spring Cloud實戰前提
- 3.2服務提供者與服務消費者
- 3.3編寫服務提供者
- 3.4編寫服務消費者
- 3.5爲項目整合Spring Boot Actuator
- 3.6硬編碼有哪些問題
4、微服務註冊與發現
- 4.1服務發現簡介
- 4.2Eureka簡介
- 4.3Eureka原理
- 4.4編寫Eureka Server
- 4.5將微服務註冊到Eureka Server上
- 4.6Eureka Server的高可用
- 4.7爲Eureka Server添加用戶認證
- 4.8Eureka的元數據
- 4.9Eureka Server的REST端點
- 4.10Eureka的自我保護模式
- 4.11多網卡環境下的IP選擇
- Eureka的健康檢查
5、使用Ribbon實現客戶端側負載均衡
- 5.1Ribbon簡介
- 5.2微服務消費者整合Ribbon
- 5.3使用Java代碼自定義Ribbon配置
- 5.4使用屬性自定義Ribbon配置
- 5.5脫離Eureka使用Ribbon
6、使用Feign實現聲明式REST條用
- 6.1Feign簡介
- 6.2爲服務消費者整合Feign
- 6.3自定義Feign配置
- 6.4手動創建Feign
- 6.5Feign對繼承的支持
- 6.6Feign對壓縮的支持
- 6.7Feign的日誌
- 6.8使用Feign構造多參數請求
7、使用Hystrix實現微服務的容錯處理
- 7.1實現容錯的手段
- 7.2使用Hystrix實現容錯
- 7.3Hystrix的監控
- 7.4使用Hystrix Dashboard可視化監控數據
- 7.5使用Turbine聚合監控數據
8、使用Zuul構建微服務網關
- 8.1爲什麼要使用微服務網關
- 8.2Zuul簡介
- 8.3縮寫Zuul微服務網關
- 8.4Zuul的路由端點
- 8.5路由配置詳解
- 8.6Zuul的安全與Header
- 8.7使用Zuul上傳文件
- 8.8Zuul的過濾器
- 8.9Zuul的容錯與回退
- 8.10Zuul的高可用
- 8.11使用Sidecar整合非JVM微服務
- 8.12使用Zuul聚合微服務
9、使用Spring Cloud Config統一管理微服務配置
- 9.1爲什麼要統一管理微服務配置
- 9.2Spring Cloud Config簡介
- 9.3編寫Config Server
- 9.4編寫Config Client
- 9.5Config Server的Git倉庫配置詳解
- 9.6Config Server的健康狀況指示器
- 9.7配置內容的加解密
- 9.8使用/refresh端點手動刷新配置
- 9.9使用Spring Cloud Bus自動刷新配置
- 9.10Spring Cloud Config與Eureka配合使用
- 9.11Spring Cloud Config的用戶認證
- 9.12Config Serve的高可用
10、使用Spring Cloud Sleuth實現微服務跟蹤
- 10.1爲什麼要實現微服務跟蹤
- 10.2Spring Cloud Sleuth簡介
- 10.3整合Spring Cloud Sleuth
- 10.4Spring Cloud Sleuth與ELK配合使用
- 10.5Spring Cloud Sleuth與Zipkin配合使用
11、Spring Cloud常見問題與總結
- 11.1Eureka常見問題
- 11.2Hystrix/Feign整合Hystrix後首次請求失敗
- 11.3.Turbine聚合的數據不完整
- 11.4Spring Cloud個組件配置屬性
- 11.5Spring Cloud定位問題思路總結
12、Docker入門
- 12.1Docker簡介
- 12.2Docker的架構
- 12.3安裝Docker
- 12.4配置鏡像加速器
- 12.5Docker常用命令
13、將微服務運行在Docker上
- 13.1使用Docker構建Docker鏡像
- 13.2使用Docker Registry管理Docker鏡像
- 13.3使用Maven插件構建Docker鏡像
- 13.4常見問題與總結
14、使用Docker Compose編排微服務
- 14.1Docker Compose簡介
- 14.2安裝Docker Compose
- 14.3Docker Compose快速入門
- 14.4docker-compose.yml常用命令
- 14.5docker compose常用命令
- 14.6Docker Compose網絡設置
- 14.7綜合實戰:使用Docker Compose編排Spring Cloud微服務