|
-- 會員 / 註冊 --
|
|
|
|
Spring Cloud開發實戰 ( 簡體 字) |
作者:徐文聰 | 類別:1. -> 程式設計 -> JAVA -> Spring |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 54753 詢問書籍請說出此書號!【有庫存】 NT售價: 475 元 |
出版日:6/1/2021 |
頁數:324 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787121411182 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:Spring Cloud技術是目前Java微服務開發使用最廣泛的技術之一,隨著微服務思想的推廣,Spring Cloud因其簡單易用、組件豐富,以及便于快速開發部署、配置和監控等特性被越來越多的開發者用于各種場景中。
筆者在使用過程中就深深感受到了Spring Cloud的便捷和強大,它提供了一整套的微服務解決方案,如Eureka注冊中心、Zuul和Gateway服務網關、Hystrix斷路器、Ribbon負載均衡器,以及分布式配置Spring Cloud Config,每一種組件配置都能無縫接入。
本書特色
本書的特色是內容豐富翔實,講解每章組件時不僅針對一個實例,而且是結合相關的知識進行擴展,并通過生活中的實例進行對比,將比較深奧的原理講解得通俗易懂。
(1)內容翔實,覆蓋了Spring Cloud微服務框架的大部分常用技術組件。
(2)深入淺出,將一些復雜的技術原理描述分析得通俗易懂,使復雜的問題簡單化。
(3)理論和代碼相結合,能讓讀者在實戰中理解一個技術點的原理和應用。
(4)結合當下最熱門和最新的技術點。
(5)對一些開發中遇到的問題進行深入的剖析。
本書內容
本書的內容如下。
(1)Spring Cloud微服務簡介:介紹了Spring Cloud的大致結構和框架、微服務的優缺點,以及與Spring Boot的關系。
(2)微服務開發工具IDEA:包括一些快捷鍵的使用、文件的搜索和查看、代碼調試技巧、第三方組件等。
(3)注冊中心Eureka和Consul:介紹了注冊中心的啟動和配置。
(4)Feign客戶端:介紹了Feign聲明式客戶的使用方法、服務降級、安全認證、超時配置、重試機制、熔斷功能和負載均衡。
(5)Ribbon負載均衡器:介紹了Ribbon負載均衡器的服務端和客戶端實例、超時配置、路由配置及負載均衡的機制等。
(6)Config配置中心和第三方配置中心:介紹了原生的Spring Cloud Config、阿里開源的Nacos、攜程的Apollo及經典的ZooKeeper。
(7)Zuul網關和Gateway網關:介紹了網關的使用方式、路由規則,以及過濾器的配置、全局和局部的限流處理等。
(8)Spring Cloud Admin管理中心:介紹了Admin作為Spring Cloud的后臺提供的一系列功能,如健康檢查、監控警告、服務日志等。
(9)文檔管理工具Swagger和Postman:介紹了文檔管理工具Swagger集成到項目中的方式及注解方法,Postman的流程和操作使用方法。
(10)MongoDB數據庫:介紹了MongoDB數據庫的結構和特點,不同版本采用的存儲引擎,MongoDB 4.0以上的事務管理功能。
(11)Redis緩存:介紹了Redis的常用操作指令、集合哈希等基本結構,緩存算法、數據淘汰策略,、集群模式等高級功能,緩存雪崩、緩存穿透和緩存擊穿等異常情況。
(12)異步消息隊列Kafka:介紹了Kafka的定義、環境部署,以及消息協議等基本功能,以及分區機制、副本機制、備份機制、文件存儲機制、消息持久化等高級功能。
本書的思維導圖如下。
本書讀者對象
(1)Java和微服務初學者。
(2)各類計算機培訓班學員。
(3)各計算機、非計算機專業的大中專院校實習學生。
(4)需要微服務入門工具書的人員。
(5)對微服務架構和Spring Cloud框架有興趣的各類人員。
(6)想了解最新軟件開發技術的愛好者。 |
內容簡介:本書是一本Spring Cloud開發的入門級教程圖書,也是一本著重于動手實戰的編程指導書。隨著這兩年Spring Cloud開發的日漸火熱,無論是對于編程工作者、編程講師或是編程愛好者與學生,掌握SpringCloud 開發技能都將為自己帶來極大的收獲。本書分15個章節對Spring Cloud的各種組件進行全面講解,并針對某個組件的替代產品進行針對性的比較。有Spring Cloud的注冊中心Eureka,Consul;網關組件Zuul和Gateway;異步消息隊列Kafka,配置中心config等。本書章節簡明扼要,務求用最簡潔的文字和代碼將整個Spring Cloud技術體系進行講解說明,讀者在閱讀的過程中也能收獲匪淺。 |
目錄:第1章 Spring Cloud微服務簡介 001
1.1 單體應用架構 001
1.1.1 單體應用架構簡介 001
1.1.2 單體應用架構的優勢 001
1.1.3 單體應用架構的劣勢 002
1.2 微服務架構 002
1.2.1 微服務架構簡介 002
1.2.2 微服務的來源 002
1.2.3 微服務的優點 002
1.2.4 微服務的缺點 003
1.2.5 微服務架構的選擇 003
1.3 Spring Cloud介紹 004
1.3.1 Spring Cloud的概念 004
1.3.2 Spring Cloud的組件 005
1.3.3 Spring Cloud版本介紹 005
1.3.4 Spring Boot簡介 005
1.3.5 Spring Boot和Spring Cloud的關系 006
1.4 本章小結 006
第2章 微服務開發工具 007
2.1 IDEA基本配置 007
2.1.1 IDEA的安裝 007
2.1.2 字體設置 007
2.1.3 自動編譯開源 009
2.1.4 代碼提示設置 009
2.1.5 Tab多行顯示 009
2.1.6 去掉行尾空格 011
2.1.7 設置行號顯示 011
2.1.8 項目文件編碼 012
2.1.9 自動導入包 013
2.2 IDEA快捷鍵 013
2.2.1 快捷鍵函數收尾 014
2.2.2 去掉無效引用 014
2.2.3 打開最近使用的文件 015
2.2.4 快速搜索文件 015
2.2.5 快速查找方法 016
2.2.6 快速搜索目錄 016
2.2.7 快速切換編輯框 016
2.2.8 查看層級關系 017
2.2.9 展開成員變量 017
2.2.10 方法參數類型提示 018
2.2.11 查看方法調用 018
2.2.12 同詞編輯 019
2.3 代碼相關技巧 020
2.3.1 打開最近的項目 020
2.3.2 本地代碼歷史 021
2.3.3 展示類成員變量 022
2.3.4 內存展示 023
2.3.5 查看項目結構 024
2.3.6 多線程斷點調試 025
2.3.7 同步顯示類 026
2.4 IDEA代碼模板配置 027
2.4.1 代碼模板定制 027
2.4.2 注釋生成 027
2.4.3 生成Java類模板 028
2.5 IDEA插件介紹 031
2.5.1 阿里巴巴規范插件 031
2.5.2 stackoverflow搜索插件 031
2.5.3 Maven Helper 032
2.5.4 POJO to JSON插件 033
2.5.5 GsonFormat插件 034
2.5.6 Grep Console日志查詢工具 036
2.5.7 Redis可視化工具 037
2.5.8 代碼高亮工具 038
2.5.9 翻譯插件 039
2.5.10 字符串標記JSON 040
2.6 本章小結 041
第3章 注冊中心 042
3.1 Eureka客戶端 042
3.1.1 Eureka客戶端依賴 042
3.1.2 Eureka客戶端文件配置 043
3.2 Eureka服務端 044
3.2.1 Eureka服務端組件依賴 044
3.2.2 Eureka服務端文件配置 045
3.2.3 Eureka服務端啟動類 046
3.2.4 注冊中心啟動 046
3.3 Eureka常用配置 047
3.3.1 Eureka權限認證 047
3.3.2 Eureka健康檢查 047
3.4 Consul注冊中心 048
3.4.1 Consul安裝和啟動 048
3.4.2 Consul服務端依賴 050
3.4.3 Consul服務端文件配置 050
3.4.4 Consul服務端啟動類 051
3.4.5 Consul客戶端文件配置 051
3.4.6 Consul客戶端業務邏輯 052
3.5 本章小結 054
第4章 Feign客戶端 055
4.1 Feign實例 055
4.1.1 Feign項目結構 055
4.1.2 Feign客戶端依賴 055
4.1.3 Feign客戶端文件配置 057
4.1.4 Feign客戶端啟動類配置 058
4.1.5 Feign的配置方式 058
4.1.6 Spring兩種類型的bean對象 058
4.1.7 Feign客戶端接口定義 059
4.1.8 Feign服務端依賴 059
4.1.9 Feign服務端文件配置 060
4.1.10 Feign服務端啟動類 061
4.1.11 Feign服務端控制器 061
4.1.12 Feign項目啟動 062
4.2 Feign請求 062
4.2.1 Feign get請求 062
4.2.2 Feign post請求 063
4.2.3 Feign服務降級 064
4.3 Feign高級配置 064
4.3.1 Feign安全認證配置 064
4.3.2 Feign超時配置 065
4.3.3 Feign日志配置 065
4.3.4 Feign核心類 066
4.4 Feign整合Zipkin 066
4.4.1 項目結構 066
4.4.2 Zipkin服務端依賴 067
4.4.3 Zipkin客戶端依賴 069
4.4.4 Zipkin客戶端配置文件 069
4.5 Hystrix注冊中心 070
4.5.1 Hystrix原理 071
4.5.2 Hystrix項目結構 071
4.5.3 Hystrix注冊中心依賴 071
4.5.4 Hystrix文件配置 072
4.5.5 Hystrix相關參數配置 072
4.5.6 Hystrix隔離策略 072
4.5.7 Eureka啟動 073
4.6 構建Hystrix服務端 073
4.6.1 Hystrix服務端組件依賴 073
4.6.2 Hystrix文件配置 073
4.6.3 Hystrix啟動類 074
4.6.4 Eureka配置文件 074
4.7 構建Hystrix客戶端 075
4.7.1 Hystrix客戶端依賴 075
4.7.2 Hystrix客戶端啟動配置 075
4.7.3 Hystrix增加控制類 076
4.7.4 Hystrix回退支持 077
4.8 本章小結 078
第5章 Ribbon負載均衡器 080
5.1 Ribbon注冊中心 080
5.1.1 Eureka實例 080
5.1.2 Ribbon服務端實例 082
5.1.3 Ribbon客戶端實例 084
5.1.4 Ribbon負載均衡 086
5.2 Ribbon常用配置 087
5.2.1 Ribbon注冊中心狀態設置 087
5.2.2 Ribbon注冊中心超時設置 087
5.2.3 Ribbon路由配置 088
5.3 本章小結 090
第6章 Config配置中心 091
6.1 Config服務端 091
6.2 Config客戶端 093
6.2.1 Config客戶端依賴 093
6.2.2 Config客戶端文件配置 095
6.2.3 動態配置刷新 096
6.3 本章小結 097
第7章 第三方配置中心 098
7.1 Apollo簡介 098
7.1.1 Apollo的結構 098
7.1.2 Apollo配置環境 100
7.1.3 Apollo數據庫配置 103
7.1.4 Apollo配置中心啟動 107
7.2 Apollo配置中心 112
7.2.1 Apollo創建配置 112
7.2.2 Apollo新增配置 112
7.2.3 Apollo發布配置 113
7.2.4 Apollo啟動 114
7.3 Apollo集群 115
7.3.1 集群配置 115
7.3.2 管理員工具 116
7.3.3 Apollo實例 124
7.4 Nacos配置中心 125
7.4.1 Nacos的安裝 125
7.4.2 項目結構 127
7.4.3 Nacos服務端依賴 127
7.4.4 Nacos服務端 128
7.4.5 Nacos配置管理 131
7.5 ZooKeeper配置中心 132
7.5.1 ZooKeeper簡介 132
7.5.2 使用場景 132
7.5.3 節點監控 133
7.5.4 ZooKeeper領導者選舉 133
7.5.5 Watcher機制 134
7.5.6 ZooKeeper部署 135
7.5.7 zkui登錄頁面 137
7.5.8 ZooKeeper實例 139
7.6 本章小結 142
第8章 Zuul網關 143
8.1 Zuul基礎實例 143
8.1.1 Zuul的作用 143
8.1.2 Zuul依賴 144
8.1.3 Zuul文件配置 144
8.1.4 啟動類配置 144
8.2 Zuul實例 145
8.2.1 創建Eureka注冊中心 145
8.2.2 Eureka客戶端依賴 146
8.2.3 Eureka客戶端文件配置 146
8.3 Zuul高級特性 148
8.3.1 路由前綴 148
8.3.2 本地跳轉 149
8.3.3 過濾器實現種類 149
8.3.4 入口規則配置 154
8.3.5 Zuul過濾器生命周期 155
8.3.6 Zuul過濾器禁用 156
8.3.7 Zuul過濾器的數據傳遞 156
8.3.8 服務降級處理 158
8.3.9 全局限流配置 158
8.3.10 局部限流配置 158
8.4 本章小結 159
第9章 Gateway網關 160
9.1 Gateway簡介 160
9.1.1 Gateway的組成 160
9.1.2 Gateway實例 161
9.1.3 Gateway轉發規則 162
9.2 本章小結 165
第10章 Admin管理中心 166
10.1 Admin實例 166
10.1.1 Admin服務端 166
10.1.2 Admin客戶端 167
10.1.3 創建Eureka項目 170
10.1.4 查看服務日志 171
10.2 Admin高級特性 171
10.2.1 集成Hystrix UI展示 171
10.2.2 Admin安全配置 172
10.2.3 攔截監控端點處理 175
10.2.4 Session監控 175
10.2.5 展示客戶端JMX信息 176
10.2.6 監控客戶端配置 176
10.2.7 服務端集成Hystrix UI展示 177
10.2.8 監控告警服務 177
10.3 本章小結 178
第11章 文檔管理工具 179
11.1 Swagger實例構建 179
11.1.1 Swagger響應 179
11.1.2 Springfox-Swagger簡介 180
11.1.3 Swagger相關依賴 180
11.1.4 Swagger文件配置 180
11.1.5 Swagger啟動 181
11.2 Swagger注解 182
11.2.1 @Api接口注解 182
11.2.2 @ApiIgnore隱藏接口 183
11.2.3 @ApiOperation方法注解 183
11.2.4 @ApiImplicitParam參數注解 184
11.2.5 @ApiResponse和@ApiResponses響應注解 185
11.2.6 @ApiModel參數注解 185
11.2.7 @ApiModelProperty字段注解 186
11.3 Swagger實例 186
11.3.1 項目結構 186
11.3.2 項目配置文件 187
11.3.3 權限模塊 187
11.3.4 用戶模塊 189
11.3.5 訂單模塊 191
11.3.6 支付模塊 192
11.3.7 商城模塊 193
11.3.8 啟動應用 194
11.3.9 請求認證 195
11.4 Postman使用方式 195
11.4.1 Postman基本使用方法 195
11.4.2 Postman主頁 196
11.4.3 創建新的接口 196
11.4.4 接口集合 198
11.5 本章小結 202
第12章 MongoDB數據庫 203
12.1 MongoDB簡介 203
12.1.1 MongoDB的結構 203
12.1.2 MongoDB的特點 204
12.1.3 應用場景 204
12.1.4 可視化客戶端 205
12.1.5 下載和安裝 206
12.2 MongoDB實例 208
12.2.1 MongoDB依賴 208
12.2.2 MongoDB創建數據庫 209
12.2.3 創建實體 213
12.2.4 用戶方法 221
12.2.5 訂單方法 222
12.2.6 支付方法 224
12.2.7 商品方法 225
12.3 MongoDB高級特性 227
12.3.1 MongoDB存儲引擎 227
12.3.2 WiredTiger引擎 227
12.3.3 In-Memory引擎 228
12.3.4 不同存儲引擎的區別 229
12.3.5 寫安全機制 229
12.3.6 事務管理 230
12.3.7 數據回滾機制 231
12.3.8 MongoDB數據備份 231
12.3.9 MongoDB內存釋放 232
12.3.10 MongoDB復制集 232
12.3.11 MongoDB元數據 232
12.3.12 MongoDB分片 232
12.4 本章小結 234
第13章 Redis緩存 235
13.1 Redis的基礎用法 235
13.1.1 Redis的安裝和啟動 235
13.1.2 Redis可視化客戶端 237
13.2 Redis實例 239
13.2.1 Redis組件 240
13.2.2 Redis信息配置 240
13.2.3 Redis key值存在判斷 242
13.2.4 Redis設置key值 242
13.2.5 Redis獲取key值 244
13.2.6 Redis緩存值 244
13.2.7 Redis緩存時間 246
13.2.8 Redis緩存過期時間設置 248
13.2.9 Redis獲取緩存時間 249
13.2.10 Redis緩存刪除 249
13.2.11 Redis緩存集合添加 250
13.2.12 Redis緩存集合查詢 251
13.2.13 Redis根據key獲取set集合 252
13.2.14 Redis整合緩存方法 253
13.2.15 設置key在指定時間過期 255
13.2.16 模糊匹配刪除key 256
13.2.17 持久化key 257
13.2.18 哈希存儲 259
13.2.19 讀取哈希值 260
13.2.20 刪除哈希值 260
13.3 Redis高級特性 263
13.3.1 Redis內部結構 263
13.3.2 最大緩存配置 263
13.3.3 Redis容量估算 263
13.3.4 Redis數據淘汰策略 264
13.3.5 Redis緩存算法 264
13.3.6 Redis事務 265
13.3.7 分區 265
13.3.8 Redis的序列化 266
13.3.9 Redis過期鍵刪除策略 266
13.3.10 Redis鎖機制 267
13.3.11 Redis單線程 267
13.3.12 Redis常見注解 268
13.3.13 Redis集群模式 269
13.3.14 持久化機制 270
13.3.15 Redis危險命令 271
13.4 緩存異常情況 271
13.4.1 緩存雪崩 271
13.4.2 緩存穿透 272
13.4.3 緩存擊穿 272
13.5 本章小結 273
?
第14章 異步消息隊列Kafka 274
14.1 Kafka基本介紹 274
14.1.1 Kafka的定義和組件 274
14.1.2 Kafka消息協議 275
14.1.3 Kafka的優點 275
14.1.4 Kafka環境部署 276
14.1.5 Kafka可視化工具 277
14.2 Kafka實例 280
14.2.1 Kafka依賴 280
14.2.2 Kafka消息消費者 281
14.2.3 Kafka消息生產者 282
14.2.4 消息體構造 283
14.3 Kafka高級機制 283
14.3.1 Kafka分區機制 283
14.3.2 Kafka流式處理 284
14.3.3 Kafka副本和備份 285
14.3.4 消息持久化 285
14.3.5 數據存儲 287
14.3.6 Kafka消費模型 287
14.3.7 Kafka日志配置 287
14.3.8 Kafka負載均衡 289
14.3.9 Kafka單元測試 290
14.4 Kafka常見問題 291
14.4.1 消息可靠性 291
14.4.2 Kafka消息丟失的問題 291
14.4.3 順序消費 292
14.4.4 重復消費 293
14.5 Bus整合Kafka 293
14.5.1 Bus架構 293
14.5.2 項目結構 294
14.5.3 Bus和Kafka 295
14.5.4 項目啟動 297
14.5.5 指定刷新范圍 300
?
14.6 Bus整合RabbitMQ 300
14.6.1 Erlang安裝 300
14.6.2 Bus服務端文件配置 303
14.6.3 Bus啟動 305
14.7 本章小結 306 |
序: |
|