日韩精品 中文字幕 动漫,91亚洲午夜一区,在线不卡日本v一区v二区丶,久久九九国产精品自在现拍

注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Spring Cloud Alibaba與Kubernetes微服務(wù)容器化實踐

Spring Cloud Alibaba與Kubernetes微服務(wù)容器化實踐

Spring Cloud Alibaba與Kubernetes微服務(wù)容器化實踐

定 價:¥89.00

作 者: 曹宇、王宇翔、胡書敏
出版社: 清華大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787302619499 出版時間: 2022-12-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書圍繞分布式微服務(wù)的項目需求,全面講述了Spring Cloud Alibaba組件實現(xiàn)服務(wù)治理、負(fù)載均衡、安全管理、分布式事務(wù)、消息發(fā)送和服務(wù)監(jiān)控的技術(shù)要點,以及基于Docker與Kubernetes容器化項目管理的相關(guān)技術(shù)。主要內(nèi)容包括:Spring Cloud Alibaba體系架構(gòu)概述,用Nacos和Nacos集群搭建基于服務(wù)治理架構(gòu)的實踐要點,用Ribbon實現(xiàn)負(fù)載均衡的做法,基于Sentinel組件實現(xiàn)熔斷和限流等安全需求的實踐要點,用Gateway組件搭建網(wǎng)關(guān)的實踐要點,用OpenFeign和Dubbo搭建遠程調(diào)用體系的實踐要點,基于Spring Cloud Stream搭建消息通信體系的實踐要點,用JPA與Redis與MyCat搭建微服務(wù)數(shù)據(jù)服務(wù)層的實踐要點,用Seata組件構(gòu)建分布式事務(wù)架構(gòu)的實踐要點和用Skywaiking組件搭建微服務(wù)監(jiān)控體系的實踐要點,基于Docker與Kubernetes容器組件搭建微服務(wù)體系,用Jenkins組件實踐集成化項目部署流程的相關(guān)技術(shù)等內(nèi)容。本書技術(shù)先進,注重實踐,適合有一定Java基礎(chǔ)的開發(fā)人員和學(xué)生閱讀,也可以供培訓(xùn)機構(gòu)和大專院校作為教學(xué)用書。

作者簡介

  曹 宇,副教授,從事高校教育工作17年,主要研究領(lǐng)域為計算機應(yīng)用技術(shù),主講Java編程課程多年,主導(dǎo)開發(fā)了EPC企業(yè)專利信息協(xié)同平臺、大宗商品信息管理系統(tǒng)等多個項目,公開發(fā)表論文數(shù)十篇。王宇翔,副教授,從事高校教育工作20年,主要研究領(lǐng)域為計算機應(yīng)用技術(shù),主講Java、微服務(wù)等課程,主持上海市 “電子商務(wù)技術(shù)雙證融通改革項目” 等項目校內(nèi)的實施管理,有多年Java教學(xué)經(jīng)驗。胡書敏,碩士,有15年Java開發(fā)經(jīng)驗,資深Java架構(gòu)師,有平安、花旗和IBM等大廠的工作經(jīng)驗,同時還有近8年Java技術(shù)面試官的經(jīng)驗。

圖書目錄


第1章  Spring Cloud Alibaba與微服務(wù)架構(gòu) 1
1.1  微服務(wù)架構(gòu)與Alibaba解決方案 1
1.1.1  單體架構(gòu)與微服務(wù)架構(gòu) 1
1.1.2  微服務(wù)架構(gòu)的優(yōu)勢與挑戰(zhàn) 2
1.1.3  Spring Cloud Alibaba微服務(wù)解決方案 3
1.1.4  Spring Boot和Spring Cloud Alibaba的關(guān)系 3
1.2  搭建開發(fā)環(huán)境 4
1.2.1  安裝JDK 4
1.2.2  安裝IntelliJ IDEA 4
1.2.3  安裝Docker環(huán)境 5
1.3  搭建Spring Boot單體服務(wù) 5
1.3.1  在IDEA中創(chuàng)建Spring Boot項目 5
1.3.2  編寫pom.xml 7
1.3.3  編寫啟動類 8
1.3.4  編寫控制器類 8
1.3.5  編寫配置文件 9
1.3.6  啟動Spring Boot,觀察運行效果 9
1.4  動手練習(xí) 9
第2章  Spring Boot整合Nacos 11
2.1  認(rèn)識和安裝Nacos 11
2.1.1  Nacos與注冊中心 11
2.1.2  Nacos與配置中心 12
2.1.3  搭建Nacos環(huán)境,啟動Nacos組件 12
2.1.4  觀察可視化管理界面 12
2.2  Spring Boot整合Nacos注冊中心 13
2.2.1  引入注冊中心后的框架圖 13
2.2.2  創(chuàng)建服務(wù)提供者項目 13
2.2.3  創(chuàng)建服務(wù)消費者項目 15
2.2.4  啟動Spring Boot類,觀察注冊中心的效果 17
2.3  用Nacos配置中心管理配置參數(shù) 18
2.3.1  在配置中心設(shè)置參數(shù) 18
2.3.2  在項目中使用參數(shù) 19
2.4  搭建高可用的Nacos集群 21
2.4.1  配置Nacos的持久化效果 21
2.4.2  搭建集群 22
2.4.3  觀察集群效果 23
2.4.4  以集群的方式管理配置 24
2.4.5  以集群的方式管理服務(wù) 24
2.5  動手練習(xí) 25
第3章  負(fù)載均衡組件Ribbon 27
3.1  負(fù)載均衡與Ribbon組件 27
3.1.1  微服務(wù)架構(gòu)中的負(fù)載均衡需求 27
3.1.2  Ribbon組件介紹 28
3.1.3  Ribbon和Nacos的整合方式 28
3.2  Ribbon實現(xiàn)負(fù)載均衡的范例 28
3.2.1  項目框架圖 29
3.2.2  編寫服務(wù)提供者項目 29
3.2.3  在服務(wù)調(diào)用者項目里引入Ribbon 31
3.2.4  觀察負(fù)載均衡效果 33
3.3  Ribbon實戰(zhàn)要點分析 34
3.3.1  設(shè)置不同的負(fù)載均衡策略 34
3.3.2  配置全局性的Ribbon參數(shù) 34
3.3.3  實現(xiàn)Ribbon饑餓加載模式 35
3.3.4  Ribbon常用參數(shù)分析 35
3.4  Ribbon整合Nacos注冊中心集群 36
3.4.1  整合后的系統(tǒng)架構(gòu) 36
3.4.2  Ribbon整合Nacos集群的實現(xiàn)步驟 36
3.5  動手練習(xí) 37
第4章  限流與防護組件Sentinel 38
4.1  微服務(wù)體系中的限流和防護需求 38
4.1.1  限流 38
4.1.2  熔斷 38
4.1.3  服務(wù)降級 39
4.2  Sentinel組件介紹 39
4.2.1  搭建Sentinel環(huán)境 39
4.2.2  啟動Sentinel控制臺 40
4.3  通過Sentinel實現(xiàn)限流 40
4.3.1  創(chuàng)建項目,引入依賴包 40
4.3.2  編寫啟動類和配置文件 41
4.3.3  編寫控制器類 42
4.3.4  在控制臺里設(shè)置限流參數(shù) 42
4.3.5  觀察限流效果 44
4.4  實現(xiàn)熱點限流效果 45
4.4.1  定義熱點限流方法 45
4.4.2  設(shè)置熱點限流參數(shù) 45
4.4.3  觀察熱點限流效果 46
4.4.4  配置參數(shù)例外項 47
4.5  實現(xiàn)熔斷效果 48
4.5.1  定義含熔斷效果的方法 48
4.5.2  設(shè)置慢調(diào)用比例熔斷參數(shù) 48
4.5.3  觀察熔斷效果 50
4.5.4  設(shè)置異常熔斷參數(shù) 51
4.6  實現(xiàn)服務(wù)降級效果 52
4.6.1  實現(xiàn)因限流而導(dǎo)致的服務(wù)降級 52
4.6.2  通過fallback參數(shù)實現(xiàn)服務(wù)降級 53
4.6.3  服務(wù)降級的實踐做法 53
4.7  動手練習(xí) 54
第5章  網(wǎng)關(guān)組件Gateway 55
5.1  Gateway網(wǎng)關(guān)組件概述 55
5.2  在微服務(wù)體系中引入Gateway組件 56
5.2.1  編寫業(yè)務(wù)方法 56
5.2.2  創(chuàng)建網(wǎng)關(guān)項目 56
5.2.3  實現(xiàn)簡單轉(zhuǎn)發(fā)功能 57
5.2.4  網(wǎng)關(guān)的過濾器 58
5.2.5  網(wǎng)關(guān)的全局過濾器 59
5.2.6  網(wǎng)關(guān)的斷言 60
5.3  Gateway整合Nacos,實現(xiàn)負(fù)載均衡 61
5.3.1  Gateway整合Nacos的架構(gòu)圖 61
5.3.2  基于Nacos的業(yè)務(wù)集群 62
5.3.3  以負(fù)載均衡的方式轉(zhuǎn)發(fā)請求 62
5.4  Gateway整合Sentinel和Nacos 64
5.4.1  整合后的架構(gòu)圖 64
5.4.2  搭建網(wǎng)關(guān)層項目 65
5.4.3  啟動項目和組件 66
5.4.4  根據(jù)路由規(guī)則限流 67
5.4.5  根據(jù)API分組限流 68
5.4.6  配置服務(wù)熔斷效果 69
5.5  通過Gateway實現(xiàn)灰度發(fā)布 69
5.5.1  灰度發(fā)布的做法 69
5.5.2  準(zhǔn)備灰度發(fā)布的環(huán)境 70
5.5.3  用Gateway實現(xiàn)灰度發(fā)布 70
5.5.4  觀察灰度發(fā)布的效果 71
5.6  動手練習(xí) 72
第6章  聲明式服務(wù)調(diào)用框架OpenFeign 73
6.1  OpenFeign框架概述 73
6.2  使用OpenFeign框架調(diào)用服務(wù) 73
6.2.1  基于Nacos的服務(wù)提供者 74
6.2.2  OpenFeign調(diào)用服務(wù)實現(xiàn)代碼 74
6.2.3  觀察OpenFeign的效果 76
6.2.4  設(shè)置超時時間 76
6.2.5  設(shè)置OpenFeign的日志級別 77
6.2.6  壓縮請求和返回 78
6.3  實現(xiàn)負(fù)載均衡和服務(wù)降級 78
6.3.1  搭建業(yè)務(wù)集群 78
6.3.2  以負(fù)載均衡方式調(diào)用服務(wù) 79
6.3.3  觀察負(fù)載均衡效果 80
6.3.4  引入服務(wù)降級效果 81
6.4  動手練習(xí) 82
第7章  遠端調(diào)用組件Dubbo 83
7.1  Dubbo組件概述 83
7.1.1  遠端方法調(diào)用流程和Dubbo組件 83
7.1.2  使用Nacos作為注冊中心 84
7.1.3  Dubbo和HTTP調(diào)用方式的差別 84
7.2  Dubbo遠端調(diào)用范例 85
7.2.1  編寫服務(wù)提供者 85
7.2.2  編寫服務(wù)調(diào)用者 87
7.2.3  定義超時時間和重試次數(shù) 88
7.2.4  觀察遠端調(diào)用的效果 89
7.3  注冊中心集群和負(fù)載均衡 89
7.3.1  系統(tǒng)架構(gòu)和項目說明 90
7.3.2  實現(xiàn)要點分析 90
7.3.3  觀察負(fù)載均衡和高可用效果 92
7.3.4  設(shè)置Dubbo負(fù)載均衡方式 92
7.4  整合Sentinel引入安全防護 93
7.4.1  服務(wù)提供端的限流和熔斷 93
7.4.2  服務(wù)提供端的服務(wù)降級 96
7.4.3  服務(wù)調(diào)用端的服務(wù)降級 96
7.4.4  Dubbo的安全措施分析 98
7.5  動手練習(xí) 98
第8章  Spring Cloud Steam整合消息中間件 100
8.1  消息中間件與Spring Cloud Stream框架 100
8.1.1  RocketMQ消息中間件 100
8.1.2  RabbitMQ消息中間件 101
8.1.3  Spring Cloud Steam封裝消息中間件 102
8.2  Spring Cloud Stream整合RocketMQ 102
8.2.1  搭建RocketMQ環(huán)境 102
8.2.2  整合后的消息框架圖 103
8.2.3  編寫消息發(fā)送者項目 104
8.2.4  編寫消息接收者項目 106
8.2.5  觀察消息通信效果 108
8.3  Spring Cloud Stream整合RabbitMQ 108
8.3.1  搭建RabbitMQ環(huán)境 108
8.3.2  整合后的消息框架圖 109
8.3.3  編寫消息發(fā)送者項目 109
8.3.4  編寫消息接收者項目 110
8.3.5  觀察消息通信效果 111
8.4  動手練習(xí) 111
第9章  JPA Redis MyCat搭建微服務(wù)數(shù)據(jù)庫服務(wù)層 113
9.1  用JPA組件操作數(shù)據(jù)庫 113
9.1.1  JPA訪問數(shù)據(jù)庫的接口 113
9.1.2  創(chuàng)建MySQL數(shù)據(jù)庫和數(shù)據(jù)表 114
9.1.3  通過JPA實現(xiàn)增刪改查功能 114
9.1.4  觀察JPA操作數(shù)據(jù)庫的效果 118
9.2  微服務(wù)整合Redis緩存 119
9.2.1  Redis概述 119
9.2.2  搭建Redis運行環(huán)境 120
9.2.3  微服務(wù)整合Redis緩存 121
9.2.4  微服務(wù)整合MySQL與Redis 124
9.3  微服務(wù)整合MyCat分庫組件 129
9.3.1  MyCat分庫組件概述 129
9.3.2  搭建MyCat環(huán)境實現(xiàn)分庫效果 130
9.3.3  微服務(wù)整合MyCat實現(xiàn)分庫效果 132
9.3.4  微服務(wù)整合MyCat和Redis 134
9.4  動手練習(xí) 135
第10章  Spring Cloud Alibaba Seata實現(xiàn)分布式事務(wù) 137
10.1  分布式事務(wù)與Seata組件 137
10.1.1  分布式業(yè)務(wù)和分布式事務(wù) 137
10.1.2  Seata組件概述 138
10.1.3  搭建Seata服務(wù)端開發(fā)環(huán)境 139
10.2  用Seata實現(xiàn)分布式事務(wù)的范例 141
10.2.1  數(shù)據(jù)庫和分布式事務(wù)描述 141
10.2.2  開發(fā)庫存微服務(wù)項目 142
10.2.3  在訂單項目里實現(xiàn)分布式事務(wù) 147
10.2.4  觀察分布式事務(wù)效果 151
10.3  搭建高可用的Seata集群 152
10.3.1  Spring Cloud整合Seata集群的架構(gòu)圖 152
10.3.2  搭建Seata集群 153
10.3.3  微服務(wù)項目整合Seata集群 156
10.4  動手練習(xí) 157
第11章  微服務(wù)監(jiān)控組件Skywalking 158
11.1  服務(wù)監(jiān)控與Skywalking組件 158
11.1.1  微服務(wù)監(jiān)控方面的需求 158
11.1.2  Skywalking組件介紹 159
11.1.3  搭建Skywalking組件運行環(huán)境 159
11.2  微服務(wù)項目整合Skywalking組件 161
11.2.1  介紹待監(jiān)控的項目 161
11.2.2  下載并配置agent 161
11.2.3  監(jiān)控項目運行情況 162
11.3  整合logback監(jiān)控整條鏈路 164
11.3.1  服務(wù)鏈路框架 164
11.3.2  整合logback,定義監(jiān)控日志格式 165
11.3.3  觀察鏈路調(diào)用的日志,觀察TID 167
11.4  觀察Skywalking告警效果 168
11.4.1  配置Skywalking告警規(guī)則 169
11.4.2  觀察告警效果 170
11.4.3  通過webhooks傳遞告警信息 171
11.5  動手練習(xí) 172
第12章  Docker部署Spring Boot項目和微服務(wù)組件 174
12.1  Docker與Spring Cloud微服務(wù) 174
12.1.1  Docker鏡像、容器和虛擬化管理引擎 174
12.1.2  搭建Docker環(huán)境 175
12.1.3  用Docker管理微服務(wù)的方式 175
12.2  容器化管理Spring Boot項目 176
12.2.1  準(zhǔn)備Spring Boot項目 176
12.2.2  打成jar包 178
12.2.3  用jar包制作鏡像 179
12.2.4  以容器化的方式運行Spring Boot 179
12.3  容器化管理組件 180
12.3.1  容器化管理Nacos組件 180
12.3.2  容器化管理Sentinel 181
12.3.3  通過Docker容器部署MySQL 182
12.3.4  通過Docker容器部署Redis 183
12.4  動手練習(xí) 184
第13章  Docker部署Spring Cloud Alibaba微服務(wù)項目 185
13.1  員工管理微服務(wù)系統(tǒng)架構(gòu)分析 185
13.1.1  微服務(wù)項目的表現(xiàn)形式與優(yōu)勢 185
13.1.2  基于Docker容器的微服務(wù)架構(gòu) 186
13.1.3  業(yè)務(wù)功能點與數(shù)據(jù)表結(jié)構(gòu) 186
13.2  開發(fā)員工管理微服務(wù)項目 187
13.2.1  開發(fā)員工管理模塊 187
13.2.2  開發(fā)網(wǎng)關(guān)模塊 192
13.3  容器化部署員工管理微服務(wù) 194
13.3.1  打包員工管理和網(wǎng)關(guān)模塊 194
13.3.2  容器化部署并運行MySQL和Redis 194
13.3.3  容器化部署并運行Nacos和Sentinel 195
13.3.4  容器化部署員工管理模塊 195
13.3.5  容器化部署網(wǎng)關(guān)模塊 196
13.3.6  觀察微服務(wù)容器化效果 197
13.3.7  引入限流和熔斷措施 198
13.4  擴容與灰度發(fā)布 199
13.4.1  演示擴容效果 199
13.4.2  演示灰度發(fā)布流程 202
13.5  動手練習(xí) 203
第14章  Kubernetes整合Spring Boot 205
14.1  Kubernetes概述 205
14.1.1  Kubernetes的作用 205
14.1.2  準(zhǔn)備Kubernetes環(huán)境 206
14.1.3  Kubernetes與Docker容器的關(guān)系 206
14.1.4  Kubernetes的Service 207
14.1.5  Kubernetes的Labels 207
14.1.6  Deployment的概念 207
14.2  用Kubernetes編排Spring Boot容器 208
14.2.1  基于Spring Boot的Docker容器 208
14.2.2  編寫Service和Deployment配置文件 208
14.2.3  通過命令編排Spring Boot容器 209
14.2.4  觀察Pod、Service和Deployment 210
14.2.5  查看Pod運行日志 211
14.3  Kubernetes常用實戰(zhàn)技巧 211
14.3.1  刪除Pod、Service和Deployment 211
14.3.2  伸縮節(jié)點 212
14.3.3  自動伸縮節(jié)點 212
14.3.4  創(chuàng)建Deployment并開放端口 213
14.3.5  進入Pod,執(zhí)行命令 214
14.4  用Ingress暴露服務(wù) 214
14.4.1  Ingress簡介 215
14.4.2  Ingress整合Service的做法 215
14.5  動手練習(xí) 216
第15章  用Kubernetes編排Spring Cloud Alibaba微服務(wù) 217
15.1  用Kubernetes編排組件 217
15.1.1  編排MySQL 217
15.1.2  編排Redis 220
15.1.3  StatefulSet和Deployment的差別 221
15.1.4  用StatefulSet編排Nacos 222
15.1.5  用StatefulSet編排Sentinel 223
15.2  用Kubernetes編排員工管理模塊 225
15.2.1  微服務(wù)框架說明 225
15.2.2  員工管理項目的實現(xiàn)要點 226
15.2.3  編排員工管理微服務(wù)模塊 228
15.2.4  觀察Kubernetes編排微服務(wù)項目的效果 229
15.2.5  引入限流和熔斷等效果 230
15.2.6  編排微服務(wù)項目的實踐要點 231
15.3  動手練習(xí) 232
第16章  基于Jenkins的微服務(wù)CI/CD實戰(zhàn) 233
16.1  Git工具與持續(xù)集成概述 233
16.1.1  持續(xù)集成概述 233
16.1.2  搭建Git代碼倉庫 234
16.1.3  安裝Git組件 234
16.1.4  在IDEA里整合Git 235
16.2  用Git實踐持續(xù)集成 236
16.2.1  待管理的項目代碼綜述 236
16.2.2  在Git倉庫中初始化項目 236
16.2.3  在本地獲取遠端項目代碼 238
16.2.4  創(chuàng)建開發(fā)分支 239
16.2.5  提交和推送代碼 240
16.2.6  把開發(fā)代碼合并到主分支 241
16.3  通過Jenkins實踐持續(xù)交付 242
16.3.1  持續(xù)交付概述 242
16.3.2  持續(xù)交付需求概述 243
16.3.3  在本地搭建Jenkins環(huán)境 243
16.3.4  創(chuàng)建Jenkins任務(wù) 244
16.3.5  觀察持續(xù)交付的實施結(jié)果 246
16.4  動手練習(xí) 247

本目錄推薦

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