●第1章介紹
1.1關於本書
1.1.1本書的目標讀者
1.1.2本書不會覆蓋的內容
1.2推薦閱讀
1.3本書的組織方式
1.3.1第一部分:基礎知識
1.3.2第二部分:REST風格的面向服務
1.3.3第三部分:REST環境下面向服務的分析與設計
1.3.4第四部分:REST服務組合
1.3.5第五部分:補充
1.3.6第六部分:附錄
1.4約定
1.4.1灰色的使用
1.4.2設計約束、原則和模式:頁碼參考
1.4.3設計目標
1.4.4符號圖例
1.5附加信息
1.5.1更新、勘誤和資源
1.5.2主詞彙表
1.5.3面向服務
1.5.4什麼是REST
1.5.5引用的規範
1.5.6服務技術雜志
1.5.7SOASchool.com
1.5.8CloudSchool.com雲認證(CCP)專家
1.5.9通知服務
第2章案例研究背景
2.1如何使用案例研究
2.2案例研究背景之一:中西部大學聯盟(MUA)
2.2.1歷史
2.2.2IT環境
2.2.3業務目標和障礙
2.3案例研究背景之二:KioskEtc有限公司
2.3.1歷史
2.3.2IT環境
2.3.3業務目標和障礙
第一部分基礎知識
第3章服務簡介
3.1服務術語
3.1.1服務
3.1.2服務契約
3.1.3服務能力
3.1.4服務消費者
3.1.5服務代理
3.1.6服務組裝
3.2服務術語上下文
3.2.1服務和REST
3.2.2服務和SOA
3.2.3REST服務和SOA
第4章SOA術語和概念
4.1基本術語和概念
4.1.1面向服務的計算
4.1.2面向服務
4.1.3面向服務架構(SOA)
4.1.4SOA宣言
4.1.5服務
4.1.6雲計算
4.1.7IT資源
4.1.8服務模型
4.1.9服務目錄
4.1.10服務集
4.1.11候選服務
4.1.12服務契約
4.1.13與服務相關的粒度
4.1.14服務概要
4.1.15SOA設計模式
4.2擴展閱讀
第5章REST約束和目標
5.1REST約束
5.1.1客戶機—服務器
5.1.2無狀態
5.1.3緩存
5.1.4接口/統一契約
5.1.5分層繫統
5.1.6隨需應變代碼
5.2REST架構風格的目標
5.2.1性能
5.2.2可伸縮性
5.2.3簡單性
5.2.4可修改性
5.2.5可視性
5.2.6可移植性
5.2.7可靠性
第二部分REST風格的面向服務
第6章REST服務契約
6.1統素
6.1.1資源標識符語法
6.1.2方法
6.1.3媒體類型
6.2REST服務能力和REST服務契約
6.3REST服務契約與非REST服務契約
6.3.1帶有定制服務契約的非REST服務
6.3.2REST服務與統一契約
6.3.3HTTP消息傳輸與SOAP消息傳輸之比較
6.3.4REST服務契約與WSDL的結合?
6.4超媒體角色
6.5REST服務契約和後期綁定
第7章用REST實現面向服務
7.1“SOA或REST”還是“SOA與REST”?
7.2設計目標
7.2.1提升內在互操作性
7.2.2增強聯邦
7.2.3提升廠商選擇多樣性
7.2.4提升業務與技術對齊
7.2.5提升投資回報率
7.2.6提升組織敏捷性
7.2.7降低IT負擔
7.2.8通用目標
7.3設計原則與約束
7.3.1標準化服務契約
7.3.2服務松耦合
7.3.3服務抽像
7.3.4服務可重用性
7.3.5服務自治
7.3.6服務無狀態
7.3.7服務可發現性
7.3.8服務可組合性
7.3.9常見衝突
第三部分REST環境下面向服務的分析與設計
第8章主流SOA方法論和REST
8.1服務目錄分析
8.2面向服務的分析(服務建模)
8.3面向服務的設計(服務契約)
8.4服務邏輯設計
8.5服務發現
8.6服務版本控制和退役
第9章REST服務分析與服務建模
9.1統一契約建模和REST服務目錄建模
9.1.1REST約束和統一契約建模
9.1.2REST服務集中化和規範化
9.2REST服務建模
9.2.1REST服務能力粒度
9.2.2資源與實體
9.2.3REST服務建模流程
9.2.4第1步:分解業務流程(分解為細粒度活動)
9.2.5第2步:過濾掉不適合的活動
9.2.6第3步:識別無關性候選服務
9.2.7第4步:識別特定於流程的邏輯
9.2.8第5步:識別資源
9.2.9第6步:將服務能力與方法和資源相關聯
9.2.10第7步:應用面向服務
9.2.11第8步:識別候選服務組合
9.2.12第9步:分析流程處理需求
9.2.13第10步:定義候選公用服務
9.2.14第11步:將以公用功能為中心的服務能力與方法和資源相關聯
9.2.15第12步:應用面向服務
9.2.16第13步:修改候選服務組合
9.2.17第14步:修改資源定義
9.2.18第15步:修改候選能力分組
9.2.19其他考慮因素
第10章面向服務的設計和REST
10.1統一契約設計考慮
10.1.1設計並標準化方法
10.1.2設計HTTP頭並進行標準化
10.1.3設計HTTP響應代碼並進行標準化
10.1.4設計媒體類型
10.1.5設計媒體類型模式
10.2REST服務契約設計
10.2.1基於服務模型設計服務
10.2.2設計資源標識符並進行標準化
10.2.3在REST約束下設計及REST約束的標準化
10.3復雜方法的設計
10.3.1無狀態的復雜方法
10.3.2有狀態的復雜方法
第四部分REST服務組合
第11章REST基礎服務組合
11.1服務組合術語
11.1.1組合和組合實例
11.1.2組合成員和控制器
11.1.3服務活動
11.1.4組合啟動者
11.1.5點對點數據交換和組合
11.2服務組合的設計影響
11.2.1面向服務原則和組合設計
11.2.2REST約束和組合設計
11.3組合層次結構和分層
11.3.1實體服務組成任務服務
11.3.2實體服務組成實體服務
11.4REST服務組合設計的若干考慮
11.4.1同步和異步服務組合
11.4.2冪等的服務活動
11.4.3組合的逗留狀態
11.4.4組合參與者之間的綁定
11.5按步驟分解的服務活動
11.5.1請求購買機票
11.5.2驗證所請求的航班詳情
11.5.3確認航班座位
11.5.4生成單據
11.5.5創建機票
11.5.6總結
第12章REST高級服務組合
12.1服務組合與無狀態
12.1.1采用服務無狀態的組合設計
12.1.2采用無狀態的組合設計
12.2跨服務的REST事務
12.2.1REST友好的原子服務事務
12.2.2REST友好的補償服務事務
12.2.3非REST友好的原子服務事務
12.3事件驅動的REST交互
12.3.1事件驅動的消息機制
12.3.2消息輪詢
12.4帶有動態綁定和邏輯延遲的服務組合
12.4.1跨規範化服務的非規範化能力
12.4.2深化組合
12.4.3動態地綁定公共屬性
12.4.4運行時邏輯延遲
12.5跨服務目錄的服務組合
12.5.1REST的目錄端點
12.5.2基線標準化的服務目錄之間的動態綁定
第13章REST服務組合之案例研究
13.1重溫授予學生獎項流程
13.2提交申請和任務服務調用
13.3授予學生獎項服務組合實例(評審前的服務活動視圖)
13.3.1步驟1:從組合啟動者到授予學生獎項任務服務(A)
13.3.2步驟2:從授予學生獎項任務服務到事跡實體服務(B)
13.3.3步驟3:從事跡實體服務到授予學生獎項任務服務(B)
13.3.4步驟4:從授予學生獎項任務服務到獎項實體服務(E)
13.3.5步驟5:從獎項實體服務到授予學生獎項任務服務(E)
13.3.6步驟6:從授予學生獎項任務服務到獎項實體服務(E)
13.3.7步驟7:從獎項實體服務到授予學生獎項任務服務(E)
13.3.8步驟8:從授予學生獎項任務服務到學生實體服務(F)
13.3.9步驟9:從學生實體服務到授予學生獎項任務服務(F)
13.3.10步驟10:從授予學生獎項任務服務到學生成績單實體服務(F)
13.3.11步驟11:從學生成績單實體服務到授予學生獎項任務服務(F)
13.3.12步驟12:從授予學生獎項任務服務到組合啟動者(A)
13.4評審待定的申請和任務服務調用
13.5授予學生獎項服務組合實例(評審後的服務活動視圖)
13.5.1步驟1:從組合啟動者到授予學生獎項任務服務(L)
13.5.2步驟2:從授予學生獎項任務服務到通知公用服務(N)
13.5.3步驟3:從通知公用服務到學生實體服務(N)
13.5.4步驟4:從學生實體服務到通知公用服務(N)
13.5.5步驟5:從通知公用服務到授予學生獎項任務服務(N)
13.5.6中間步驟:從授予學生獎項任務服務到事務協調者(P,Q)
13.5.7中間步驟:從事務協調者到授予學生獎項任務服務(P,Q)
13.5.8步驟6:從授予學生獎項任務服務到授予實體服務(P)
13.5.9中間步驟:從授予實體服務到事務協調者(P)
13.5.10中間步驟:從事務協調者到授予實體服務(P)
13.5.11步驟7:從授予實體服務到授予學生獎項任務服務(Q)
13.5.12步驟8:從授予學生獎項任務服務到學生成績單實體服務(Q)
13.5.13中間步驟:從學生成績單實體服務到事務協調者(Q)
13.5.14中間步驟:從事務協調者到學生成績單實體服務(Q)
13.5.15步驟9:從學生成績單實體服務到授予學生獎項任務服務(Q)
13.5.16中間步驟:從授予學生獎項任務服務到事務協調者(P,Q)
13.5.17中間步驟:從事務協調者到授予學生獎項任務服務(P,Q)
13.5.18步驟10:從授予學生獎項任務服務到組合啟動者(L)
第五部分補充
第14章SOA與REST的設計模式
14.1受REST啟發的SOA設計模式
14.1.1內容協商
14.1.2端點重定向
14.1.3實體鏈接
14.1.4冪等能力
14.1.5輕量級端點
14.1.6可重用契約
14.1.7統一契約
14.2其他相關的SOA設計模式
14.2.1契約集中化
14.2.2契約去規範化
14.2.3域目錄
14.2.4模式集中化
14.2.5狀態消息機制
14.2.6校驗抽像
第15章REST服務版本控制
15.1版本控制基礎
15.1.1REST服務契約的兼容性
15.1.2統一契約方法的兼容性
15.1.3統一契約媒體類型的兼容性
15.2版本標識符
15.2.1使用版本標識符
15.2.2版本標識符和統一契約
第16章統一契約概要
16.1統一契約概要模板
16.1.1統一契約層結構
16.1.2方法概要結構
16.1.3媒體類型概要結構
16.2REST服務概要考慮
第六部分附錄
附錄A案例研究結論
附錄B支持Web的工業標準
附錄CREST約束參考
附錄D面向服務原則參考
附錄ESOA設計模式參考
附錄F狀態的概念和類型
附錄G帶注解的SOA宣言
附錄H其他資源
書中提到的模式的作者
關於序的作者
關於作者