第1章概述
1.1什么是架構(gòu)和架構(gòu)師
1.2這本書是為誰寫的
1.3為什么寫作此書
1.4通往架構(gòu)師之路的路線圖
1.5架構(gòu)師應(yīng)該具備的素質(zhì)
1.6對(duì)架構(gòu)師的學(xué)習(xí)和培養(yǎng)過程的幾點(diǎn)建議
1.7本書的主要內(nèi)容
1.8總結(jié)
第1部分基礎(chǔ)篇
2章重新看待系統(tǒng)集成
2.1系統(tǒng)集成歷史的快速回放
2.2到底什么是系統(tǒng)集成
2.2.1系統(tǒng)集成之信息更新
2.2.2系統(tǒng)集成之信息組合
2.2.3系統(tǒng)集成之連鎖行動(dòng)
2.3系統(tǒng)集成的技術(shù)組成部分
2.3.1BUS高速公路
2.3.2連接器高速公路的進(jìn)出口
2.3.3CDM高速公路運(yùn)輸?shù)募b箱
2.3.4數(shù)據(jù)轉(zhuǎn)換運(yùn)輸過程中的貨物處理
2.4系統(tǒng)集成應(yīng)用的考慮
2.4.1系統(tǒng)集成的過程中到底要完成什么任務(wù)
2.4.2如何保證系統(tǒng)集成過程中數(shù)據(jù)傳遞的可靠性
2.4.3如何使用消息服務(wù)器
2.5實(shí)戰(zhàn): PLM數(shù)據(jù)與現(xiàn)有系統(tǒng)的集成
2.5.1項(xiàng)目背景
2.5.2業(yè)務(wù)痛點(diǎn)
2.5.3技術(shù)難點(diǎn)
2.5.4解決方案及經(jīng)驗(yàn)教訓(xùn)
2.6總結(jié)
第3章系統(tǒng)之間相互作用的模式
3.1系統(tǒng)集成模式簡介
3.2系統(tǒng)集成模式中幾個(gè)重要的概念
3.2.1主題與隊(duì)列在消息傳遞中的區(qū)別
3.2.2消息服務(wù)器使用的儲(chǔ)存轉(zhuǎn)送
3.2.3消息服務(wù)器的容錯(cuò)和高可用性
3.2.4分級(jí)式事件驅(qū)動(dòng)架構(gòu)及其實(shí)際應(yīng)用
3.3系統(tǒng)集成模式的實(shí)戰(zhàn)應(yīng)用和分析
3.3.1消息的順序處理
3.3.2持久訂閱如何實(shí)現(xiàn)
3.3.3命令類消息的應(yīng)用
3.3.4事件消息的使用
3.3.5回復(fù)地址的使用
3.3.6消息傳遞搭橋的使用
3.3.7消息信封的使用
3.4總結(jié)
4章常見的參與集成的功能系統(tǒng)
4.1功能系統(tǒng)與集成基礎(chǔ)設(shè)施的連接
4.2常見功能系統(tǒng)的功能和類型
4.3總結(jié)
5章究竟什么是服務(wù)
5.1什么是服務(wù)
5.2是誰在推動(dòng)服務(wù)的重復(fù)使用
5.3服務(wù)的作
5.4服務(wù)的界面
5.5服務(wù)作的粒度
5.6服務(wù)的組合SOA
5.7實(shí)戰(zhàn): 數(shù)據(jù)
5.7.1項(xiàng)目背景
5.7.2業(yè)務(wù)痛點(diǎn)
5.7.3技術(shù)難點(diǎn)
5.7.4解決方案及經(jīng)驗(yàn)教訓(xùn)
5.8總結(jié)
6章系統(tǒng)集成項(xiàng)目的實(shí)施步驟
6.1系統(tǒng)集成與服務(wù)項(xiàng)目概述
6.2系統(tǒng)集成與服務(wù)項(xiàng)目的具體實(shí)施步驟
6.3設(shè)計(jì)和開發(fā)階段
6.3.1搜集項(xiàng)目業(yè)務(wù)功能要求
6.3.2架構(gòu)設(shè)計(jì)
6.3.3細(xì)節(jié)設(shè)計(jì)
6.3.4代碼編寫和單元測試
6.3.5集成測試
6.4測試和驗(yàn)收階段
6.4.1質(zhì)量保證部署
6.4.2質(zhì)量保證測試
6.4.3用戶驗(yàn)收部署
6.4.4用戶驗(yàn)收測試
6.4.5(可選項(xiàng))作驗(yàn)收測試
6.5運(yùn)維、培訓(xùn)和交付階段
6.5.1生產(chǎn)環(huán)境部署
6.5.2試運(yùn)行
6.5.3培訓(xùn)及文檔提交
6.5.4項(xiàng)目驗(yàn)收
6.6總結(jié)
第7章集成項(xiàng)目與公共服務(wù)
7.1公共服務(wù)的具體內(nèi)容
7.1.1日志服務(wù)
7.1.2出錯(cuò)處理服務(wù)
7.1.3ID映服務(wù)
7.1.4順序處理服務(wù)
7.1.5連續(xù)集成/連續(xù)部署(CI/CD)
7.1.6系統(tǒng)及應(yīng)用監(jiān)控服務(wù)
7.1.7應(yīng)用、服務(wù)、API的分析服務(wù)
7.2業(yè)務(wù)項(xiàng)目的項(xiàng)目模板及其與公共服務(wù)的互動(dòng)
7.3總結(jié)
8章SOA在實(shí)施中的局限性
8.1SOA在具體實(shí)施中的做法
8.1.1SOA的設(shè)計(jì)原則
8.1.2SOA績優(yōu)中心
8.2深挖SOA的初衷
8.3SOA的適用范圍和局限性
8.4總結(jié)
第2部分正篇現(xiàn)代API、應(yīng)用互聯(lián)網(wǎng)
9章現(xiàn)代API的引入、應(yīng)用互聯(lián)網(wǎng)
9.1什么是(現(xiàn)代)API
9.1.1REST架構(gòu)的特點(diǎn)
9.1.2REST架構(gòu)的特點(diǎn)在API中的具體應(yīng)用
9.2(現(xiàn)代)API流行背后的原因
9.2.1API和云平臺(tái)的普及
9.2.2API與企業(yè)數(shù)字化轉(zhuǎn)型、應(yīng)用互聯(lián)網(wǎng)及API經(jīng)濟(jì)
9.3API的平臺(tái)和工具有待進(jìn)一步統(tǒng)一和標(biāo)準(zhǔn)化
9.4一個(gè)REST API的結(jié)構(gòu)
9.5對(duì)API的認(rèn)識(shí)不是一蹴而就的
9.6動(dòng)手開發(fā)API先嘗為快
9.7總結(jié)10章圍繞API的開發(fā)工作
10.1API的生命周期
10.1.1API的設(shè)計(jì)生命周期
10.1.2API的運(yùn)維生命周期
10.2API的調(diào)用者
10.3API項(xiàng)目中的人員和流程
10.3.1什么是使能中心
10.3.2圍繞使能中心的不同角色
10.3.3使能中心與績優(yōu)中心的區(qū)別
10.3.4建立使能中心的具體步驟
10.3.5建立使能中心的好處
10.4總結(jié)
11章API與微服務(wù)
11.1什么是微服務(wù)
11.2微服務(wù)與服務(wù)的關(guān)系
11.3微服務(wù)與API的關(guān)系
11.4總結(jié)
12章API與云計(jì)算
12.1云計(jì)算需求的由來
12.2云計(jì)算對(duì)API技術(shù)的影響
12.2.1云計(jì)算的平臺(tái)能為你的API和應(yīng)用提供多少服務(wù)
12.2.2現(xiàn)有系統(tǒng)之間的連接是否受到影響
12.2.3是否需要增加安全措施
12.2.4如何將API負(fù)責(zé)對(duì)內(nèi)和對(duì)外的部分分開
12.3實(shí)戰(zhàn): 全云和云本地混合型的API平臺(tái)
12.3.1項(xiàng)目1背景
12.3.2項(xiàng)目1云平臺(tái)的架構(gòu)
12.3.3項(xiàng)目2背景
12.3.4項(xiàng)目2混合型平臺(tái)的架構(gòu)
12.4總結(jié)13章佳實(shí)踐的經(jīng)驗(yàn)
13.1關(guān)于系統(tǒng)集成的佳實(shí)踐
13.1.1不要以數(shù)據(jù)復(fù)制的思考方式設(shè)計(jì)系統(tǒng)集成
13.1.2盡量避免使用批處理文件的方式
13.1.3對(duì)消息服務(wù)器運(yùn)行的認(rèn)識(shí)
13.1.4使用SEDA的架構(gòu)模式來提高系統(tǒng)集成整體設(shè)計(jì)
的可靠性
13.1.5對(duì)容錯(cuò)、負(fù)載平衡和高可用性的考慮
13.1.6對(duì)災(zāi)難恢復(fù)設(shè)置的考慮
13.1.7接收J(rèn)MS消息時(shí)的消息確認(rèn)方式對(duì)消息處理
可靠性的影響
13.2關(guān)于API的佳實(shí)踐
13.2.1在設(shè)計(jì)API的過程中使用資源的字眼,而不要
使用數(shù)據(jù)
13.2.2不要使用API的概念和方式來做系統(tǒng)集成
13.2.3API還是連接器
13.2.4API實(shí)施中的出錯(cuò)處理
13.2.5API的URI的每一個(gè)部分都應(yīng)該是名詞,
而不是動(dòng)詞
13.2.6API的版本管理
13.2.7API調(diào)用全程中的錯(cuò)誤查找
13.3關(guān)于架構(gòu)設(shè)計(jì)的佳實(shí)踐
13.3.1不要使用UML的時(shí)序圖來編寫系統(tǒng)集成的用例
文件
13.3.2注意區(qū)分設(shè)計(jì)能方面和非功能方面的要求
13.3.3API與敏捷開發(fā)的關(guān)系
13.3.4不要在沒有系統(tǒng)性能指標(biāo)要求的情況下對(duì)系統(tǒng)
進(jìn)行性能的評(píng)價(jià)和測試
13.3.5數(shù)據(jù)驗(yàn)證邏輯與數(shù)據(jù)的關(guān)系
13.3.6API、服務(wù)和集成中均不保留狀態(tài)
13.4實(shí)戰(zhàn)案例現(xiàn)有的老舊IT系統(tǒng)的改造
13.5總結(jié)14章圍繞API的展望
14.1關(guān)于企業(yè)的IT欠債
14.2利用API產(chǎn)生新的業(yè)務(wù)創(chuàng)新和數(shù)字化轉(zhuǎn)型
14.2.1優(yōu)步(Uber)的創(chuàng)新
14.2.2郵局的數(shù)字化轉(zhuǎn)型
14.2.3電力公司旨在提高零售用電顧客滿意度
的數(shù)字化轉(zhuǎn)型
14.2.4玩具公司旨在減少貨運(yùn)差錯(cuò)和加快貨款回收
的數(shù)字化轉(zhuǎn)型
14.3利用API產(chǎn)生應(yīng)用互聯(lián)網(wǎng)和API經(jīng)濟(jì)
14.4關(guān)于API經(jīng)濟(jì)的新展望
14.5總結(jié)
第3部分閑篇感悟與隨想
15章架構(gòu)師的人文情懷
15.1關(guān)于學(xué)習(xí)過程中的三個(gè)境界
15.2架構(gòu)師所要具備的硬實(shí)力
15.3架構(gòu)師所要具備的軟實(shí)力
15.3.1時(shí)刻分清目的和手段
15.3.2處處講究形式邏輯
15.3.3強(qiáng)調(diào)利用抽象思維的能力
15.3.4表達(dá)和交流要看對(duì)象
15.3.5堅(jiān)持原則,但也要知道妥協(xié)
15.3.6知之為知之,不知為不知
15.4架構(gòu)師所處的大環(huán)境
15.4.1架構(gòu)師的職業(yè)規(guī)劃
15.4.2軟件工程問題與業(yè)務(wù)問題的分離
15.4.3高校計(jì)算機(jī)軟件課程設(shè)置與現(xiàn)實(shí)對(duì)架構(gòu)師要求的
匹配問題
15.5總結(jié)
附錄A關(guān)于實(shí)踐
A.1搭建MuleSoft的開發(fā)和運(yùn)行環(huán)境開源版
A.1.1開發(fā)環(huán)境
A.1.2運(yùn)行環(huán)境
A.2安裝Apache ActiveMQ消息服務(wù)器開源版
附錄B集成中常遇到的功能系統(tǒng)
B.1業(yè)務(wù)流程管理系統(tǒng)
B.2復(fù)雜事件處理
B.3云端系統(tǒng)
B.4客戶關(guān)系管理系統(tǒng)
B.5數(shù)據(jù)庫系統(tǒng)
B.6電子內(nèi)容管理
B.7電子商務(wù)
B.8電子數(shù)據(jù)交換
B.9企業(yè)資源計(jì)劃
B.10人力資本管理
B.11行業(yè)標(biāo)準(zhǔn)
B.12IT開發(fā)和運(yùn)行工具
B.13IT基礎(chǔ)設(shè)施管理
B.14傳統(tǒng)系統(tǒng)改造
B.15主數(shù)據(jù)管理
B.16消息傳遞服務(wù)器
B.17通信協(xié)議
B.18社交媒體