注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)分布式系統(tǒng)架構(gòu)與開發(fā):技術(shù)原理與面試題解析

分布式系統(tǒng)架構(gòu)與開發(fā):技術(shù)原理與面試題解析

分布式系統(tǒng)架構(gòu)與開發(fā):技術(shù)原理與面試題解析

定 價(jià):¥99.00

作 者: 鄭天民 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

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

內(nèi)容簡介

  本書能幫助讀者深入理解和掌握分布式系統(tǒng)架構(gòu)與開發(fā),以及快速了解各互聯(lián)網(wǎng)大廠在分布式系統(tǒng)方面的高頻面試題及其解法。作者有超過15年的架構(gòu)與研發(fā)經(jīng)驗(yàn),在分布式系統(tǒng)方面,積累了大量的項(xiàng)目經(jīng)驗(yàn)和面試經(jīng)驗(yàn)。分布式系統(tǒng)涉及的技術(shù)多且復(fù)雜,作者根據(jù)自己的經(jīng)驗(yàn),化繁為簡,將從事分布式系統(tǒng)架構(gòu)與開發(fā)的技術(shù)與能力,全部總結(jié)在了本書中,包含但不限于以下內(nèi)容:(1)拋開具體的框架,詳細(xì)講解分布式系統(tǒng)的全棧技術(shù)組件的實(shí)現(xiàn)原理、應(yīng)用方式、設(shè)計(jì)思想,具體包括網(wǎng)絡(luò)通信、遠(yuǎn)程調(diào)用、負(fù)載均衡、服務(wù)容錯(cuò)、服務(wù)降級(jí)、注冊(cè)中心、服務(wù)網(wǎng)關(guān)、配置中心、消息通信、動(dòng)態(tài)代理、應(yīng)用緩存、資源管理、框架集成和架構(gòu)模式。這些組件在各種分布式系統(tǒng)框架中是通用的,掌握本書內(nèi)容后,讀者在面對(duì)各種具體的框架時(shí)可以觸類旁通。(2)深入剖析Dubbo、Spring Cloud、MyBatis等主流開源框架的源代碼結(jié)構(gòu),分析它們的底層實(shí)現(xiàn)原理,提煉分布式系統(tǒng)開發(fā)精髓。(3)獨(dú)創(chuàng)一套剖析框架源代碼結(jié)構(gòu)的系統(tǒng)方法,分別基于組件設(shè)計(jì)原則、架構(gòu)演進(jìn)過程、核心執(zhí)行流程、基礎(chǔ)架構(gòu)組成和可擴(kuò)展性設(shè)計(jì)這5大主題展開講解,指導(dǎo)讀者高效學(xué)習(xí)其他開源框架。(4)作者結(jié)合多年的面試和培訓(xùn)經(jīng)驗(yàn),針對(duì)每個(gè)技術(shù)組件梳理了一組面試題。這些面試題大多是阿里巴巴、、網(wǎng)易等大廠的真題,作者結(jié)合自己的理解對(duì)考點(diǎn)進(jìn)行了解析,并將框架源碼與面試題融合貫通。同時(shí)對(duì)于技術(shù)人員如何實(shí)現(xiàn)自我成長和高效應(yīng)對(duì)技術(shù)面試,給出了系統(tǒng)性的方法論。

作者簡介

  鄭天民資深架構(gòu)師和技術(shù)專家,有近15年的軟件研發(fā)和架構(gòu)經(jīng)驗(yàn)。現(xiàn)擔(dān)任某知名健康科技公司技術(shù)總監(jiān),先后就職于多家大型上市公司和互聯(lián)網(wǎng)獨(dú)角獸公司,擔(dān)任系統(tǒng)架構(gòu)師、技術(shù)總監(jiān)和CTO等職務(wù)。對(duì)架構(gòu)設(shè)計(jì)和技術(shù)管理有深入的理解,積累了豐富的經(jīng)驗(yàn),研發(fā)和主持過10余個(gè)面向研發(fā)人員的技術(shù)與管理類培訓(xùn)課程。熱衷于總結(jié)和分享,著作有《系統(tǒng)架構(gòu)設(shè)計(jì)》等,譯作有《Spring響應(yīng)式編程》等。 阿里云MVP、騰訊云TVP、TGO鯤鵬會(huì)會(huì)員。

圖書目錄

前言
第1章 認(rèn)識(shí)分布式系統(tǒng)1
1.1 分布式系統(tǒng)概述1
1.1.1 從單塊系統(tǒng)到分布式系統(tǒng)1
1.1.2 分布式系統(tǒng)的基本特性3
1.1.3 分布式系統(tǒng)和微服務(wù)架構(gòu)4
1.2 分布式系統(tǒng)的核心設(shè)計(jì)要求6
1.2.1 性能6
1.2.2 可用性6
1.2.3 可擴(kuò)展性6
1.2.4 服務(wù)治理7
1.3 分布式系統(tǒng)開發(fā)技術(shù)組件7
1.3.1 遠(yuǎn)程過程調(diào)用組件8
1.3.2 微服務(wù)構(gòu)建組件10
1.3.3 通用技術(shù)組件13
1.4 分布式系統(tǒng)的主流開發(fā)套件15
1.4.1 Spring Boot15
1.4.2 Spring Cloud18
1.4.3 Dubbo18
1.4.4 MyBatis19
1.5 分布式系統(tǒng)面試題解析19
1.6 本章小結(jié)20
 
第2章 剖析框架代碼結(jié)構(gòu)的系統(tǒng)方法22
2.1 基于組件設(shè)計(jì)原則剖析代碼結(jié)構(gòu)23
2.1.1 為什么代碼結(jié)構(gòu)要這么設(shè)計(jì)23
2.1.2 組件設(shè)計(jì)原則與量化標(biāo)準(zhǔn)24
2.1.3 組件設(shè)計(jì)原則與代碼結(jié)構(gòu):
   Dubbo與MyBatis28
2.1.4 循環(huán)依賴及其消除方法31
2.2 基于架構(gòu)演進(jìn)過程剖析代碼結(jié)構(gòu)39
2.2.1 如何從易到難對(duì)框架進(jìn)行
   逐步拆解39
2.2.2 Dubbo的架構(gòu)演進(jìn)過程40
2.3 基于主流程剖析代碼結(jié)構(gòu)46
2.3.1 如何抓住主流程并對(duì)框架
   進(jìn)行分層剖析46
2.3.2 MyBatis中的主流程46
2.4 基于基礎(chǔ)架構(gòu)組成剖析代碼結(jié)構(gòu)54
2.4.1 如何從基礎(chǔ)架構(gòu)擴(kuò)展到
   具體實(shí)現(xiàn)框架54
2.4.2 RPC基礎(chǔ)架構(gòu)54
2.4.3 從RPC基礎(chǔ)架構(gòu)擴(kuò)展到
   Dubbo框架61
2.5 基于可擴(kuò)展性設(shè)計(jì)剖析代碼結(jié)構(gòu)65
2.5.1 如何在框架中預(yù)留可擴(kuò)展點(diǎn)65
2.5.2 常見的可擴(kuò)展性設(shè)計(jì)方法66
2.5.3 MyBatis TypeHandler機(jī)制68
2.6 剖析框架代碼結(jié)構(gòu)面試題解析72
2.7 本章小結(jié)73
 
第3章 網(wǎng)絡(luò)通信74
3.1 網(wǎng)絡(luò)通信與Dubbo框架74
3.1.1 網(wǎng)絡(luò)通信基本概念74
3.1.2 Dubbo中的網(wǎng)絡(luò)通信組件77
3.2 Dubbo服務(wù)器端通信原理77
3.2.1 服務(wù)器端Exchange77
3.2.2 服務(wù)器端Transport82
3.2.3 服務(wù)器端Serialize84
3.3 Dubbo客戶端通信原理87
3.4 網(wǎng)絡(luò)通信面試題解析89
3.5 本章小結(jié)90
 
第4章 遠(yuǎn)程調(diào)用91
4.1 服務(wù)發(fā)布和引用92
4.1.1 如何發(fā)布遠(yuǎn)程服務(wù)92
4.1.2 如何引用遠(yuǎn)程服務(wù)93
4.2 Dubbo中的遠(yuǎn)程調(diào)用94
4.2.1 Dubbo服務(wù)發(fā)布流程94
4.2.2 Dubbo服務(wù)引用流程101
4.3 遠(yuǎn)程調(diào)用面試題解析109
4.4 本章小結(jié)110
 
第5章 負(fù)載均衡112
5.1 負(fù)載均衡基本原理112
5.1.1 負(fù)載均衡的類型113
5.1.2 負(fù)載均衡算法和策略114
5.2 Dubbo中的負(fù)載均衡116
5.2.1 Dubbo負(fù)載均衡整體結(jié)構(gòu)116
5.2.2 Dubbo負(fù)載均衡策略118
5.3 Spring Cloud中的負(fù)載均衡120
5.3.1 Netflix Ribbon核心機(jī)制120
5.3.2 Netflix Ribbon負(fù)載均衡策略122
5.3.3 Spring Cloud Netflix Ribbon
   實(shí)現(xiàn)原理124
5.4 負(fù)載均衡面試題解析127
5.5 本章小結(jié)128
 
第6章 服務(wù)容錯(cuò)129
6.1 服務(wù)容錯(cuò)設(shè)計(jì)思想129
6.1.1 服務(wù)消費(fèi)者容錯(cuò)129
6.1.2 服務(wù)容錯(cuò)策略130
6.2 Dubbo中的集群容錯(cuò)132
6.2.1 Dubbo中的集群133
6.2.2 Dubbo中的容錯(cuò)機(jī)制134
6.3 Spring Cloud中的服務(wù)熔斷136
6.3.1 Spring Cloud Circuit Breaker137
6.3.2 Hystrix熔斷機(jī)制139
6.4 服務(wù)容錯(cuò)面試題解析147
6.5 本章小結(jié)148
 
第7章 服務(wù)降級(jí)149
7.1 服務(wù)降級(jí)策略149
7.1.1 服務(wù)分級(jí)149
7.1.2 服務(wù)回退150
7.2 Dubbo中的服務(wù)降級(jí)151
7.2.1 Dubbo中的Mock機(jī)制151
7.2.2 MockInvoker和Mock-
   ClusterInvoker152
7.3 Spring Cloud中的服務(wù)降級(jí)154
7.3.1 Spring Cloud中的回退機(jī)制154
7.3.2 基于攔截器實(shí)現(xiàn)回退156
7.4 服務(wù)降級(jí)面試題解析158
7.5 本章小結(jié)159
 
第8章 注冊(cè)中心160
8.1 服務(wù)注冊(cè)和發(fā)現(xiàn)160
8.1.1 注冊(cè)中心模型160
8.1.2 注冊(cè)中心實(shí)現(xiàn)工具163
8.2 Dubbo中的注冊(cè)中心163
8.2.1 Dubbo注冊(cè)中心模型163
8.2.2 ZooKeeper基本原理與
   操作方式164
8.2.3 ZooKeeper注冊(cè)中心實(shí)現(xiàn)過程166
8.3 Spring Cloud中的注冊(cè)中心172
8.3.1 Eureka注冊(cè)中心模型172
8.3.2 Eureka服務(wù)器端基本原理173
8.3.3 Eureka客戶端基本原理178
8.4 注冊(cè)中心面試題解析184
8.5 本章小結(jié)185
 
第9章 服務(wù)網(wǎng)關(guān)186
9.1 服務(wù)網(wǎng)關(guān)的核心概念187
9.1.1 服務(wù)網(wǎng)關(guān)的作用187
9.1.2 服務(wù)網(wǎng)關(guān)的結(jié)構(gòu)和功能188
9.2 Spring Cloud Gateway工作原理188
9.2.1 響應(yīng)式編程概述189
9.2.2 Spring Cloud Gateway架構(gòu)192
9.2.3 路由和過濾器194
9.3 服務(wù)網(wǎng)關(guān)面試題解析204
9.4 本章小結(jié)205
 
第10章 配置中心206
10.1 配置中心基本模型207
10.1.1 配置中心與微服務(wù)架構(gòu)207
10.1.2 配置中心實(shí)現(xiàn)工具208
10.2 Spring Cloud Config工作機(jī)制209
10.2.1 Spring Cloud Config Server
    工作機(jī)制209
10.2.2 Spring Cloud Config Client
    工作機(jī)制213
10.3 Spring Cloud Config配置信息更新218
10.3.1 Spring Cloud Config客戶端
    更新策略218
10.3.2 配置信息熱更新機(jī)制219
10.4 配置中心面試題解析223
10.5 本章小結(jié)225
 
第11章 消息通信226
11.1 事件驅(qū)動(dòng)和消息通信226
11.1.1 事件驅(qū)動(dòng)架構(gòu)的需求226
11.1.2 消息通信機(jī)制和消息中間件228
11.1.3 基于消息通信機(jī)制的系統(tǒng)
    集成方法229
11.2 從Spring Messaging到
   Spring Cloud Stream230
11.2.1 Spring Messaging和
    Spring Integration 231
11.2.2 Spring Cloud Stream中的
    Spring Integration233
11.2.3 Spring Cloud Stream基本架構(gòu)234
11.3 Spring Cloud Stream整合
   消息中間件235
11.3.1 Spring Cloud Stream
    發(fā)送和接收消息235
11.3.2 RabbitMQ發(fā)送和接收消息242
11.4 消息通信面試題解析245
11.5 本章小結(jié)246
 
第12章 動(dòng)態(tài)代理247
12.1 代理模式和類型247
12.1.1 靜態(tài)代理機(jī)制248
12.1.2 動(dòng)態(tài)代理機(jī)制249
12.2 Dubbo遠(yuǎn)程訪問中的代理機(jī)制252
12.2.1 ProxyFactory252
12.2.2 JdkProxyFactory253
12.3 MyBatis數(shù)據(jù)訪問中的代理機(jī)制254
12.3.1 Mapper和動(dòng)態(tài)代理254
12.3.2 延遲加載和動(dòng)態(tài)代理258
12.4 動(dòng)態(tài)代理面試題解析260
12.5 本章小結(jié)261
 
第13章 應(yīng)用緩存263
13.1 應(yīng)用緩存的設(shè)計(jì)策略263
13.1.1 經(jīng)典緩存分層架構(gòu)263
13.1.2 應(yīng)用緩存的分級(jí)模式264
13.2 MyBatis一級(jí)緩存264
13.2.1 Cache264
13.2.2 PerpetualCache265
13.2.3 一級(jí)緩存與BaseExecutor268
13.3 MyBatis二級(jí)緩存271
13.3.1 CacheBuilder271
13.3.2 二級(jí)緩存與CachingExecutor274
13.4 應(yīng)用緩存面試題解析277
13.5 本章小結(jié)278
 
第14章 資源管理279
14.1 資源管理和資源池279
14.1.1 資源池模型279
14.1.2 資源池實(shí)現(xiàn)示例280
14.2 MyBatis中的數(shù)據(jù)庫連接池282
14.2.1 連接池的工作流程和
    核心要素283
14.2.2 Connection對(duì)象獲取過程284
14.2.3 PooledDataSource285
14.2.4 UnpooledDataSource289
14.3 資源管理面試題解析290
14.4 本章小結(jié)291
 
第15章 框架集成292
15.1 Spring中的啟動(dòng)擴(kuò)展點(diǎn)292
15.1.1 InitializingBean和
   DisposableBean292
15.1.2 BeanPostProcessor295
15.1.3 Aware296
15.1.4 ApplicationListener299
15.2 Spring自定義標(biāo)簽體系305
15.2.1 標(biāo)簽擴(kuò)展時(shí)機(jī)305
15.2.2 標(biāo)簽擴(kuò)展的開發(fā)流程305
15.3 Spring Boot自動(dòng)配置310
15.4 Dubbo的框架集成312
15.4.1 Dubbo啟動(dòng)機(jī)制313
15.4.2 Dubbo自定義配置標(biāo)簽319
15.5 MyBatis的框架集成320
15.5.1 MyBatis-Spring啟動(dòng)過程320
15.5.2 MyBatis-Spring-Boot-Starter326
15.6 框架集成面試題解析329
15.7 本章小結(jié)331
 
第16章 架構(gòu)模式332
16.1 架構(gòu)模式與應(yīng)用332
16.1.1 模式的概念和分類332
16.1.2 基于架構(gòu)模式把握框架
    設(shè)計(jì)思想333
16.2 微內(nèi)核模式及其應(yīng)用334
16.2.1 微內(nèi)核模式和插件化系統(tǒng)334
16.2.2 微內(nèi)核模式的基本實(shí)現(xiàn):
    SPI機(jī)制336
16.2.3 微內(nèi)核模式在Dubbo
    中的應(yīng)用339
16.2.4 Dubbo中的擴(kuò)展點(diǎn)344
16.3 管道-過濾器模式及其應(yīng)用346
16.3.1 管道-過濾器模式簡介346
16.3.2 管道-過濾器模式在
    Dubbo中的應(yīng)用351
16.3.3 管道-過濾器模式在MyBatis
    中的應(yīng)用354
16.4 架構(gòu)模式面試題解析360
16.5 本章小結(jié)362

本目錄推薦

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