| | | Spring Cloud微服務和分布式繫統實踐 | 該商品所屬分類:圖書 -> 科技 | 【市場價】 | 617-896元 | 【優惠價】 | 386-560元 | 【作者】 | 楊開振 | 【出版社】 | 人民郵電出版社 | 【ISBN】 | 9787115532206 | 【折扣說明】 | 一次購物滿999元台幣免運費+贈品 一次購物滿2000元台幣95折+免運費+贈品 一次購物滿3000元台幣92折+免運費+贈品 一次購物滿4000元台幣88折+免運費+贈品
| 【本期贈品】 | ①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
| |
版本 | 正版全新電子版PDF檔 | 您已选择: | 正版全新 | 溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。 *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。 *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。 | | | | 內容介紹 | |
![](/c3/67915981842.jpg)
出版社:人民郵電出版社 ISBN:9787115532206 商品編碼:67915981842 品牌:文軒 出版時間:2020-05-01 代碼:119 作者:楊開振
"![](http://img14.360buyimg.com/cms/jfs/t1/203358/9/26405/134589/62f4a34cEcdefae53/84e082ed3b03dbc0.jpg) 作 者:楊開振 著 定 價:119 出 版 社:人民郵電出版社 出版日期:2020年05月01日 頁 數:514 裝 幀:平裝 ISBN:9787115532206 ●第一部分 概述和基礎 第1章 分布式和微服務概述 3 1.1 互聯網繫統的特征 4 1.2 分布式繫統概述 4 1.2.1 分布式的切分方法 5 1.2.2 分布式繫統所面臨的問題 8 1.2.3 分布式的衡量標準 9 1.3 分布式繫統的設計原則 10 1.3.1 CAP原則 10 1.3.2 BASE理論 11 1.4 微服務架構 12 1.4.1 概述 12 1.4.2 微服務的風格 12 1.4.3 微服務和分布式繫統的關繫 15 1.5 Spring Cloud 15 1.5.1 Spring Cloud的各個組件的簡介 16 1.5.2 Spring Cloud版本說明 16 1.6 微服務繫統樣例簡介 17 第2章 技術基礎 19 2.1 Spring Boot 19 2.1.1 創建Spring Boot工程 19 2.1.2 Spring Boot開發簡介 21 2.1.3 多文件配置 25 2.1.4 打包和運行 27 2.1.5 Spring Boot監控 28 2.1.6 Spring Boot小結 29 2.2 REST風格簡介 29 2.2.1 REST風格概述 30 2.2.2 REST風格端點開發 31 2.2.3 狀態碼和響應頭 35 2.2.4 客戶端RestTemplate的使用 38 第二部分 Spring Cloud微服務 第3章 服務治理——Eureka 43 3.1 服務治理中心 43 3.1.1 搭建Eureka服務治理中心 43 3.1.2 服務發現 47 3.1.3 多個服務治理中心實例 51 3.2 Eureka治理機制 54 3.2.1 基礎架構 54 3.2.2 服務治理中心工作原理 57 3.2.3 Region和Zone 60 3.2.4 Eureka關鍵源碼解讀 62 3.2.5 Eureka使用注意點 69 3.3 Eureka配置 69 3.3.1 客戶端服務注冊配置 70 3.3.2 客戶端服務實例配置 71 第4章 客戶端負載均衡——Ribbon 73 4.1 負載均衡概述 73 4.2 初識Ribbon 74 4.2.1 Ribbon概述 74 4.2.2 Ribbon是如何實現負載均衡的 75 4.3 Ribbon負載均衡器和策略 80 4.3.1 負載均衡器 80 4.3.2 負載均衡策略 84 4.4 Ribbon服務實例清單維護 93 4.4.1 獲取服務實例清單 94 4.4.2 更新服務實例清單 96 4.4.3 服務實例的心跳監測 97 4.4.4 IPing接口 99 4.5 自定義Ribbon客戶端 100 4.5.1 全局配置 101 4.5.2 局部定義 101 4.6 Ribbon使用實踐 103 第5章 斷路器——Hystrix 105 5.1 概述 105 5.1.1 熔斷的概念 105 5.1.2 服務降級 107 5.1.3 Hystrix的功能簡介 108 5.2 入門實例 108 5.3 Hystrix工作原理 112 5.3.1 Hystrix命令 113 5.3.2 緩存 114 5.3.3 斷路器 115 5.3.4 隔離 119 5.4 Hystrix實踐 122 5.4.1 使用Hystrix命令 123 5.4.2 請求緩存 129 5.4.3 請求合並 137 5.4.4 線程池劃分 145 5.5 儀表盤 146 5.5.1 單體監控 147 5.5.2 Turbine聚合監控 151 5.6 Hystrix屬性配置 153 5.6.1 命令屬性配置 154 5.6.2 線程池屬性配置 157 第6章 新斷路器——Resilience4j 158 6.1 斷路器(CircuitBreaker) 160 6.1.1 斷路器配置和注冊機 160 6.1.2 斷路器的狀態 162 6.1.3 使用斷路器的實例 162 6.1.4 異常處理 165 6.1.5 拾遺 166 6.2 限速器(RateLimiter) 168 6.2.1 使用實踐 168 6.2.2 拾遺 170 6.3 艙壁隔離(Bulkhead) 171 6.3.1 使用艙壁隔離 171 6.3.2 拾遺 173 6.4 重試器(Retry) 173 6.4.1 使用重試機制 173 6.4.2 拾遺 175 6.5 緩存(Cache) 176 6.5.1 使用Resilience4j緩存 176 6.5.2 拾遺 178 6.6 時間器(TimeLimiter) 178 6.7 組件混用 179 6.8 使用Spring Boot 2的配置方式 181 6.8.1 通過配置創建斷路器 181 6.8.2 通過配置創建限速器 183 第7章 聲明式調用——OpenFeign 185 7.1 OpenFeign的使用 186 7.1.1 入門實例 186 7.1.2 常見的傳參場景 188 7.1.3 OpenFeign客戶端接口的繼承 190 7.1.4 OpenFeign客戶端的配置 191 7.1.5 OpenFeign的全局配置 197 7.2 配置Hystrix 199 7.2.1 使用服務降級 200 7.2.2 Hystrix中關於OpenFeign的其他配置 203 7.2.3 使用建議 204 7.3 使用Resilience4j調用OpenFeign接口 204 第8章 舊API網關——Zuul 207 8.1 什麼是網關 208 8.2 Zuul入門實例 209 8.3 Zuul原理——過濾器 211 8.3.1 過濾器設計和責任鏈 211 8.3.2 開發過濾器 214 8.3.3 Zuul自動裝配的過濾器 218 8.4 限流 220 8.4.1 Resilience4j限速器限流 220 8.4.2 spring-cloud-zuul-ratelimit限速 222 8.5 動態路由 224 8.5.1 動態路由原理 224 8.5.2 動態路由實例 226 8.6 灰度發布(金絲雀發布) 230 8.6.1 標記微服務是否為灰色發布 230 8.6.2 網關過濾 231 8.7 使用Hystrix熔斷 232 第9章 新網關——Spring CloudGateway 235 9.1 認識Gateway 236 9.1.1 入門實例 237 9.1.2 Gateway執行原理 238 9.2 斷言(Predicate) 242 9.2.1 Before路由斷言工廠 242 9.2.2 After路由斷言工廠 243 9.2.3 Between路由斷言工廠 244 9.2.4 Cookie路由斷言工廠 245 9.2.5 Header路由斷言工廠 246 9.2.6 Host路由斷言工廠 246 9.2.7 Method路由斷言工廠 247 9.2.8 Path路由斷言工廠 248 9.2.9 Query路由斷言工廠 249 9.2.10 RemoteAddr路由斷言工廠 250 9.2.11 Weight路由斷言工廠 250 9.3 過濾器(Filter)概述 253 9.4 內置過濾器工廠 253 9.4.1 AddRequestHeader過濾器工廠 254 9.4.2 AddRequestParameter過濾器工廠 254 9.4.3 AddResponseHeader過濾器工廠 255 9.4.4 Retry過濾器工廠 256 9.4.5 Hystrix過濾器工廠 258 9.4.6 RequestRateLimiter過濾器工廠 259 9.4.7 StripPrefix過濾器工廠 262 9.4.8 RewritePath過濾器工廠 263 9.4.9 SetStatus過濾器工廠 264 9.4.10 小結 265 9.5 自定義過濾器 265 9.5.1 自定義過濾器——使用Resilience4j限流 265 9.5.2 全局過濾器——轉發token 268 9.5.3 過濾器的順序 269 9.6 Gateway知識補充 273 9.6.1 基於服務發現的路由 273 9.6.2 度量和動態更新路由 274 第10章 配置——Spring Cloud Config 277 10.1 入門實例——使用Git倉庫 277 10.1.1 服務端開發 278 10.1.2 客戶端開發 280 10.1.3 驗證配置 281 10.1.4 小結 282 10.2 使用其他方式實現配置 282 10.2.1 使用本地文件 282 10.2.2 使用SVN配置 283 10.2.3 使用數據庫 284 10.3 服務端的使用詳解 286 10.3.1 敏感配置加密和解密 286 10.3.2 查看配置文件和監控端點 289 10.3.3 安全認證 291 10.3.4 高可用的Config配置 293 第11章 Spring Cloud Sleuth全鏈路追蹤 295 11.1 鏈路追蹤的基本概念 295 11.2 Spring Cloud Sleuth和Zipkin 297 11.3 實例 298 11.3.1 搭建Zipkin服務器 298 11.3.2 搭建服務提供者和服務消費者 300 11.3.3 搭建網關服務 303 11.3.4 查看全鏈路追蹤 304 11.3.5 在鏈路中自定義樣本標記屬性 306 11.4 持久化 308 11.4.1 在數據庫中存儲鏈路樣本 308 11.4.2 在Elasticsearch中存儲鏈路樣本 309 第 12章 微服務的監控——Spring Boot Admin 312 12.1 本章實例簡介 313 12.2 URL注冊方式 313 12.2.1 Admin服務端開發 313 12.2.2 Admin客戶端開發 314 12.2.3 查看Admin服務端監測平臺 315 12.3 服務發現注冊方式 316 12.4 使用Spring Security保護Admin服務端 319 第三部分 分布式技術 第13章 生成專享的ID——發號機制 323 13.1 生成ID的常見辦法 323 13.1.1 使用UUID 324 13.1.2 為什麼不用UUID 324 13.1.3 數據庫自增長 325 13.1.4 使用Redis生成ID 327 13.1.5 時鐘算法 329 13.1.6 變異時鐘算法——SnowFlake算法 331 13.1.7 小結 334 13.2 自定義發號機制 334 第14章 分布式數據庫技術 337 14.1 基礎知識 337 14.1.1 數據庫的分表、分庫和分區的概念 337 14.1.2 Spring多數據源支持 339 14.2 開發環境搭建 341 14.2.1 SSM框架整合 342 14.2.2 配置多數據源 345 14.3 分片算法 350 14.3.1 哈希分片之求餘算法 351 14.3.2 一致性哈希算法 352 14.3.3 熱點分配法 357 14.4 分片中間件ShardingSphere 358 14.4.1 概述 358 14.4.2 ShardingSphere的重要概念 359 14.4.3 ShardingSphere的分片 360 14.4.4 實例 361 14.4.5 結束語 363 第15章 分布式數據庫事務 364 15.1 強一致性事務 364 15.1.1 兩階段提交協議——XA協議 365 15.1.2 三階段提交協議 371 15.1.3 為什麼微服務不適合使用強一致性事務 372 15.2 弱一致性事務 373 15.2.1 本節樣例模型和衝正交易的概念 374 15.2.2 使用狀態表 375 15.2.3 使用可靠消息源——RabbitMQ 376 15.2.4 提高嘗試次數和冪等性 380 15.2.5 TCC補償事務 381 15.2.6 小結 383 15.3 分布式事務應用的實踐理論 383 15.3.1 什麼時候使用分布式事務 383 15.3.2 數據修復思路 384 第16章 分布式緩存——Redis 387 16.1 Redis的高可用 388 16.1.1 哨兵模式 389 16.1.2 Redis集群 394 16.2 使用一致性哈希(ShardedJedis) 402 16.3 分布式緩存實踐 403 16.3.1 大對像的緩存 403 16.3.2 緩存穿透、並發和雪崩 404 16.3.3 緩存實踐的一些建議 406 第17章 分布式會話 407 17.1 分布式會話的幾種方式 407 17.2 黏性會話 408 17.3 服務器會話復制 408 17.4 使用緩存(spring-session-data-redis) 409 17.5 持久化到數據庫 411 第18章 分布式繫統權限驗證 412 18.1 Spring Security 412 18.1.1 簡單使用Spring Security 413 18.1.2 使用自定義用戶驗證 415 18.1.3 使用緩存共享實現分布式權限 421 18.1.4 跨站點請求偽造(CSRF)攻擊 423 18.1.5 使用自定義頁面 425 18.2 自定義微服務權限控制 427 18.2.1 基礎包開發 428 18.2.2 開發Eureka客戶端 432 18.2.3 網關開發 434 18.2.4 服務調用 438 18.3 OAuth 2.0概述 441 18.3.1 OAuth的概念和流程 441 18.3.2 使用JWT進行安全認證 443 18.3.3 spring-security-oauth2 444 18.4 Spring Cloud Security 445 18.4.1 構建認證服務器 446 18.4.2 開發SSO客戶端 450 18.4.3 測試 453 第四部分 微服務繫統實踐 第19章 遠程過程調用 459 19.1 遠程過程調用 459 19.1.1 REST風格服務調用性能測試 459 19.1.2 RPC入門 460 19.1.3 RPC和REST風格服務調用的對比 461 19.2 Thrift簡介 462 19.2.1 配置Thrift 462 19.2.2 Thrift的數據結構和服務接口 463 19.2.3 開發業務邏輯 464 19.2.4 啟動Thrift服務器 465 19.2.5 Thrift客戶端 466 19.2.6 使用斷路器保護服務調用 468 19.3 RPC小結 469 第20章 微服務設計和高並發實踐 470 20.1 微服務設計原則 470 20.1.1 服務拆分方法 470 20.1.2 微服務的設計原則 471 20.1.3 微服務架構 471 20.2 高並發繫統的一些優化經驗 472 20.2.1 提高性能 473 20.2.2 服務高可用 479 20.3 簡易微服務繫統實例 488 20.3.1 服務治理中心(ms-eureka) 489 20.3.2 搭建產品微服務(ms-product) 490 20.3.3 網關微服務開發(ms-zuul) 498 20.3.4 資金微服務(ms-fund) 508 20.3.5 服務實例監測平臺(ms-admin) 510 20.3.6 Hystrix儀表盤(ms-dashboard) 511 20.3.7 服務鏈路追蹤(ms-sleuth) 512 《Spring Cloud微服務和分布式繫統實踐》從企業的真實需求出發,理論結合實際,深入講解Spring Cloud微服務和分布式繫統的知識。書中既包括Spring Cloud微服務的各類常用組件的講解,又包括分布式繫統的常用知識的介紹。Spring Cloud組件方面主要講解服務注冊和服務發現(Eureka)、服務調用(Ribbon和OpenFeign)、斷路器(Hystrix和Resilience4j)、網關(Zuul和Gateway)、配置(Config)、全鏈路追蹤(Sleuth)、微服務的監控(Admin)等;分布式繫統方面主要講解分布式數據庫、分布式緩存、會話和權限以及發號機制等。本書的實踐部分通過Apache Thrift講解了遠程過程調用(RPC)在分布式繫統中的應用,並且分析了處理高並發的一些常用方法,最後還通過一個簡單的實例講解了微服務繫統的搭建。本書適合想要學習Sp等 楊開振 著 楊開振,精通Java互聯網技術,擁有十餘年企業一線開發和實踐經驗,著有《深入淺出Spring Boot 2.x》《深入淺出MyBatis技術原理與實戰》《Java EE互聯網輕量級框架整合開發——SSM框架(Spring MVC+Spring+MyBatis)和Redis實現》等業內暢銷書。 ![](https://img10.360buyimg.com/imgzone/jfs/t1/147514/7/5440/73116/5f34a3beE3ba58783/f5b2391383f5625c.jpg)
" | | | | | |