注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)Spring Boot+Spring Cloud+Spring Cloud Alibaba微服務(wù)訓(xùn)練營(yíng)

Spring Boot+Spring Cloud+Spring Cloud Alibaba微服務(wù)訓(xùn)練營(yíng)

Spring Boot+Spring Cloud+Spring Cloud Alibaba微服務(wù)訓(xùn)練營(yíng)

定 價(jià):¥99.00

作 者: 黃文毅 著
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302582236 出版時(shí)間: 2021-07-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 365 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書以分布式微服務(wù)項(xiàng)目需求為主線,系統(tǒng)地介紹了Spring Boot、Spring Cloud、Spring Cloud Alibaba的生產(chǎn)級(jí)特性、重要組件及核心技術(shù),包括服務(wù)治理、服務(wù)注冊(cè)與發(fā)現(xiàn)、負(fù)載均衡等分布式框架所需要的各種功能。本書共分為14章。第1章主要講解Spring Boot的重要功能特性以及閱讀本書之前需要準(zhǔn)備的環(huán)境。第2章主要介紹Spring Cloud和Spring Cloud Alibaba模塊、版本以及之間的關(guān)系。第3章主要介紹注冊(cè)中心和配置中心Nacos以及其他開(kāi)源的組件。第4章主要講解微服務(wù)網(wǎng)關(guān)Spring Cloud Gateway和Zuul。第5、6章主要講解負(fù)載均衡組件Ribbon和微服務(wù)調(diào)用組件OpenFeign。第7章主要講解服務(wù)限流、降級(jí)、容錯(cuò)以及熔斷等技術(shù),包括Hystrix組件和Sentinel組件。第8、9章主要介紹Spring Cloud Bus消息總線、分布式事務(wù)解決方案Seata。第10、11章主要講解鏈路追蹤組件Spring Cloud Sleuth和Zipkin,以及Spring Cloud Commons基礎(chǔ)包。第12章主要講解如何通過(guò)OAuth 2.0進(jìn)行授權(quán)。第13章主要講解微服務(wù)和組件容器化。第14章主要介紹分布式微服務(wù)架構(gòu)的具體案例。 本書技術(shù)先進(jìn),貼近實(shí)踐,講練結(jié)合,適合具有Java基礎(chǔ)或1~2年開(kāi)發(fā)經(jīng)驗(yàn)的讀者使用,也可作為網(wǎng)課、培訓(xùn)機(jī)構(gòu)和大專院校的教學(xué)用書。

作者簡(jiǎn)介

  黃文毅,Java架構(gòu)師,從業(yè)8年,CSDN博客專家,曾先后就職于廈門星耀藍(lán)圖、上海美團(tuán)、廈門美圖等科技公司,目前就職于廈門海西醫(yī)藥,主要從事后端開(kāi)發(fā)工作,對(duì)分布式技術(shù)與微服務(wù)架構(gòu),具有深刻理解與豐富的實(shí)踐經(jīng)驗(yàn)。已出版《一步一步學(xué)Spring Boot微服務(wù)項(xiàng)目實(shí)戰(zhàn)》(清華大學(xué)出版社,2019年)、《微服務(wù)架構(gòu)原理與實(shí)踐》(清華大學(xué)出版社,2019年)等圖書。

圖書目錄

第1章 從Spring Boot開(kāi)始 1 1.1 環(huán)境準(zhǔn)備 1 1.1.1 安裝JDK 1 1.1.2 安裝Intellij IDEA 4 1.1.3 安裝Maven 4 1.1.4 Docker概述 5 1.2 Spring Boot簡(jiǎn)介 14 1.3 第#一個(gè)Spring Boot項(xiàng)目 16 1.3.1 使用Spring Initializr新建項(xiàng)目 16 1.3.2 測(cè)試 18 1.4 Spring Boot目錄介紹 19 1.4.1 Spring Boot工程目錄 19 1.4.2 Spring Boot入口類 20 1.4.3 Spring Boot測(cè)試類 20 1.4.4 pom.xml文件 21 1.5 Spring Boot生產(chǎn)級(jí)特性 23 1.5.1 應(yīng)用監(jiān)控 23 1.5.2 健康檢查 26 1.5.3 跨域訪問(wèn) 27 1.5.4 外部配置 28 1.6 Spring Boot原理解析 29 1.6.1 DemoApplication入口類 29 1.6.2 @SpringBootApplication的原理 29 1.6.3 SpringApplication的run方法 31 1.6.4 SpringApplicationRunListener監(jiān)聽(tīng)器 32 1.6.5 ApplicationContextInitializer接口 32 1.6.6 ApplicationRunner與CommandLineRunner 34 1.7 SpringApplication的執(zhí)行流程 35 1.7.1 spring-boot-starter原理 36 1.7.2 Bean參數(shù)獲取 39 1.7.3 Bean的發(fā)現(xiàn)與加載 40 1.7.4 自定義starter 46 第2章 Spring Cloud/Spring Cloud Alibaba 52 2.1 Spring Cloud介紹 52 2.1.1 Spring Cloud的特性 52 2.1.2 Spring Cloud的模塊 53 2.1.3 Spring Cloud版本介紹 54 2.1.4 Spring Cloud與Spring Boot的關(guān)系 55 2.2 Spring Cloud Alibaba簡(jiǎn)介 55 2.2.1 Spring Cloud Alibaba的主要功能 55 2.2.2 Spring Cloud Alibaba組件 56 2.2.3 Spring Cloud Alibaba版本簡(jiǎn)介 57 2.4 Netflix/Spring Cloud/Spring Cloud Alibaba的關(guān)系 58 第3章 注冊(cè)中心/配置管理 59 3.1 Nacos簡(jiǎn)介 59 3.2 Nacos快速開(kāi)始 60 3.2.1 Nacos Server單機(jī)模式 60 3.2.2 Nacos Server集群模式 63 3.2.3 Nacos Nginx集群模式 66 3.3 Spring Boot注冊(cè)到Nacos 67 3.3.1 Nacos配置管理 67 3.3.2 Nacos服務(wù)注冊(cè) 69 3.4 Nacos Spring Cloud 70 3.4.1 Nacos配置管理 70 3.4.2 Nacos服務(wù)注冊(cè) 72 3.5 Nacos原理解析 75 3.5.1 Nacos配置中心原理分析 75 3.5.2 Nacos服務(wù)發(fā)現(xiàn)原理分析 84 3.6 Eureka服務(wù)發(fā)現(xiàn) 86 3.6.1 Eureka簡(jiǎn)介 86 3.6.2 如何看待Eureka停產(chǎn) 88 3.6.3 搭建Eureka注冊(cè)中心 88 3.6.4 搭建Eureka注冊(cè)中心集群 92 3.7 Spring Cloud Consul 95 3.7.1 Consul簡(jiǎn)介 95 3.7.2 Consul安裝與啟動(dòng) 95 3.7.3 Consul服務(wù)注冊(cè)與發(fā)現(xiàn) 96 3.7.4 Consul配置中心 100 3.7.5 Consul簡(jiǎn)單架構(gòu) 103 3.8 Spring Cloud Config 104 3.8.1 Spring Cloud Config簡(jiǎn)介 104 3.8.2 Spring Cloud Config快速入門 105 3.8.3 Spring Cloud Config配置中心原理 108 第4章 微服務(wù)網(wǎng)關(guān) 109 4.1 Zuul網(wǎng)關(guān) 109 4.1.1 Zuul概述 109 4.1.2 Zuul快速入門 110 4.1.3 Zuul路由配置 111 4.1.4 Zuul過(guò)濾器 112 4.1.5 管理端點(diǎn) 114 4.1.6 禁用Zuul過(guò)濾器 115 4.1.7 啟用Zuul跨域請(qǐng)求 115 4.1.8 Eureka整合Zuul 116 4.2 Spring Cloud Gateway 120 4.2.1 Gateway簡(jiǎn)介 120 4.2.2 Gateway快速入門 121 4.2.3 Gateway路由斷言工廠 123 4.2.4 Gateway過(guò)濾器工廠 127 4.2.5 Gateway全局過(guò)濾器 128 4.2.6 Gateway跨域 131 4.2.7 Gateway Actuator API 132 4.2.8 HTTP超時(shí)配置 134 4.2.9 TLS / SSL設(shè)置 135 4.2.10 Gateway底層原理 136 4.3 Gateway與Zuul的區(qū)別 137 第5章 Ribbon負(fù)載均衡 138 5.1 Ribbon基礎(chǔ)知識(shí) 138 5.1.1 Ribbon簡(jiǎn)介 138 5.1.2 負(fù)載均衡算法 140 5.1.3 第#一個(gè)Ribbon程序 144 5.2 Ribbon實(shí)戰(zhàn) 147 5.2.1 Ribbon自定義負(fù)載均衡策略 147 5.2.2 Ribbon饑餓加載 151 5.2.3 Ribbon默認(rèn)配置 151 5.2.4 配置文件定義Ribbon客戶端 152 5.2.5 直接使用Ribbon API 153 5.2.6 Eureka/Nacos整合Ribbon 153 第6章 Spring Cloud OpenFeign聲明式調(diào)用 155 6.1 Spring Cloud Feign 155 6.1.1 Feign簡(jiǎn)介 155 6.1.2 第#一個(gè)Feign程序 156 6.2 FeignClient詳解與配置 161 6.2.1 @FeignClient詳解 161 6.2.2 Feign Hystrix錯(cuò)誤回退 166 6.2.3 Feign @QueryMap支持 167 6.2.4 HATEOAS支持 167 6.2.5 Spring @MatrixVariable支持 168 6.2.6 Feign繼承支持 168 6.2.7 Feign CollectionFormat支持 169 6.2.8 Feign請(qǐng)求響應(yīng)壓縮 169 6.3 Feign日志配置 170 6.3.1 Java代碼方式 170 6.3.2 配置文件方式 171 6.3.3 全局日志配置 171 6.4 自定義處理 172 6.4.1 Feign自定義錯(cuò)誤 172 6.4.2 Feign攔截器 176 6.4.3 自定義Feign客戶端 177 第7章 熔斷、限流、降級(jí) 179 7.1 Spring Cloud Hystrix 179 7.1.1 Hystrix簡(jiǎn)介 179 7.1.2 Hystrix初體驗(yàn) 182 7.1.3 Hystrix請(qǐng)求緩存 184 7.1.4 Hystrix請(qǐng)求合并 187 7.1.5 Hystrix默認(rèn)配置 190 7.1.6 Hystrix配置詳解 191 7.2 Hystrix工作流程 194 7.3 Hystrix監(jiān)控 196 7.3.1 Spring Boot應(yīng)用配置Hystrix儀表板 197 7.3.2 Turbine集群監(jiān)控 200 7.4 Sentinel 204 7.4.1 Sentinel簡(jiǎn)介 204 7.4.2 限流算法 204 7.4.3 Sentinel項(xiàng)目結(jié)構(gòu) 206 7.4.4 Sentinel與Hystrix的區(qū)別 207 7.4.5 Sentinel控制臺(tái) 207 7.4.6 客戶端接入控制臺(tái) 209 7.4.7 Sentinel微服務(wù)限流 210 第8章 Spring Cloud Bus消息總線 214 8.1 Kafka實(shí)現(xiàn)消息總線 214 8.1.1 Kafka概述 214 8.1.2 Kafka安裝 217 8.1.3 Docker安裝ZooKeeper和Kafka 219 8.2 Stream簡(jiǎn)介 219 8.2.1 核心概念 219 8.2.2 Stream應(yīng)用編程模型 220 8.2.3 Binder抽象 220 8.2.4 發(fā)布—訂閱 221 8.2.5 消費(fèi)組 221 8.2.6 分區(qū)支持 221 8.2.7 健康指標(biāo) 221 8.3 Spring Cloud Stream實(shí)戰(zhàn) 222 8.3.1 Stream快速入門 222 8.3.2 生產(chǎn)者的另一種實(shí)現(xiàn) 227 8.3.3 生產(chǎn)和消費(fèi)消息 229 8.4 Bus簡(jiǎn)介 232 8.4.1 Bus消息總線 232 8.4.2 Spring事件機(jī)制 232 8.4.3 Spring Cloud Bus實(shí)戰(zhàn) 235 8.4.4 Spring Cloud Bus原理 239 8.4.5 Spring Cloud Bus端點(diǎn) 240 8.4.6 Bus事件追蹤 240 第9章 Spring Cloud Alibaba Seata分布式事務(wù) 243 9.1 Seata基礎(chǔ)知識(shí) 243 9.1.1 Seata簡(jiǎn)介 243 9.1.2 Seata部署 244 9.1.3 Seata原理與設(shè)計(jì) 246 9.2 Seata使用 247 9.2.1 數(shù)據(jù)庫(kù)準(zhǔn)備 247 9.2.2 創(chuàng)建微服務(wù) 248 第10章 Spring Cloud Sleuth服務(wù)鏈路追蹤 257 10.1 Spring Cloud Sleuth簡(jiǎn)介 257 10.2 Zipkin簡(jiǎn)介 259 10.3 Spring Cloud Sleuth整合Zipkin 261 10.3.1 整合Zipkin 261 10.3.2 MySQL存儲(chǔ)鏈路數(shù)據(jù) 265 10.3.3 Sleuth抽樣采集 267 10.3.4 Trace和Span 268 10.4 Spring Cloud Sleuth整合ELK 271 10.5 Sleuth原理淺析 275 10.5.1 TraceId傳遞 275 10.5.2 spring.factories配置文件 276 10.5.3 TraceEnvironmentPostProcessor處理日志 278 10.5.4 TraceAutoConfiguration 279 10.5.5 TracingFilter過(guò)濾器 280 10.5.6 TraceWebClientAutoConfiguration 283 第11章 Spring Cloud Commons 286 11.1 Spring Cloud Commons簡(jiǎn)介 286 11.2 Spring Cloud Context功能 286 11.2.1 bootstrap應(yīng)用程序上下文 286 11.2.2 修改bootstrap.properties位置 287 11.2.3 覆蓋遠(yuǎn)程屬性的值 287 11.2.4 自定義bootstrap配置 287 11.2.5 刷新范圍 288 11.2.6 加密與解密 288 11.2.7 Endpoints端點(diǎn) 288 11.3 Spring Cloud Commons功能 289 11.3.1 @EnableDiscoveryClient注解 289 11.3.2 服務(wù)注冊(cè)ServiceRegistry 290 11.3.3 多個(gè)RestTemplate實(shí)例 290 11.3.4 多個(gè)WebClient實(shí)例 291 11.3.5 忽略網(wǎng)卡 293 11.3.6 HTTP客戶端工廠 293 11.3.7 啟用功能特性 294 11.3.8 Spring Cloud兼容性驗(yàn)證 295 11.4 Spring Cloud LoadBalancer 295 11.4.1 LoadBalancer簡(jiǎn)介 295 11.4.2 Spring Cloud LoadBalancer緩存 296 11.4.3 Spring Cloud LoadBalancer Starter 296 11.4.4 自定義Spring Cloud LoadBalancer配置 297 11.5 Spring Cloud Circuit Breaker 297 11.5.1 Circuit Breaker介紹 297 11.5.2 核心概念 298 11.5.3 配置斷路器 299 11.6 具備緩存功能隨機(jī)數(shù) 300 第12章 Spring Cloud OAuth 2.0保護(hù)API安全 301 12.1 使用OAuth 2.0進(jìn)行授權(quán) 301 12.1.1 OAuth 2.0簡(jiǎn)介 301 12.1.2 OAuth 2.0協(xié)議流程 302 12.1.3 認(rèn)證與授權(quán) 302 12.1.4 OAuth 2.0的授權(quán)方式 303 12.1.5 Spring Cloud Security OAuth 2.0認(rèn)證流程 305 12.2 搭建OAuth 2.0服務(wù) 306 12.2.1 快速搭建OAuth 2.0服務(wù) 306 12.2.2 授權(quán)碼模式實(shí)現(xiàn) 308 12.3 JWT簡(jiǎn)介 313 12.3.1 JWT的結(jié)構(gòu) 313 12.3.2 JWT的應(yīng)用 315 12.3.3 Spring Security OAuth 2.0 JWT應(yīng)用 315 第13章 Spring Cloud組件容器化 336 13.1 Spring Boot項(xiàng)目容器化 336 13.1.1 制作鏡像 336 13.1.2 使用Dockerfile構(gòu)建鏡像 338 13.1.3 Spring Boot集成Docker 341 13.2 Spring Cloud Alibaba組件容器化 345 13.2.1 Nacos Docker 345 13.2.2 Sentinel Docker 346 13.2.3 Seata Docker 346 第14章 使用Spring Cloud構(gòu)建微服務(wù)綜合案例 348 14.1 案例介紹 348 14.2 技術(shù)選型 348 14.2.1 Spring Boot構(gòu)建微服務(wù) 348 14.2.2 Nacos注冊(cè)/配置中心 350 14.2.3 Spring Cloud Gateway網(wǎng)關(guān) 352 14.2.4 OpenFeign服務(wù)調(diào)用 355 14.2.5 Ribbon負(fù)載均衡 355 14.2.6 Sentinel熔斷/降級(jí)/限流 356 14.2.7 ELK FileBeat日志系統(tǒng) 357 14.2.8 Promethous Grafana InfluxDB監(jiān)控系統(tǒng) 359 14.2.9 SkyWalking鏈路追蹤系統(tǒng) 363 14.3 總結(jié) 365 參考文獻(xiàn) 366

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) hotzeplotz.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)