反應式設計模式 | 運動資訊第一站 - 2024年7月

反應式設計模式

作者:(美)羅蘭·庫恩
出版社:清華大學
出版日期:2019年01月01日
ISBN:9787302517146
語言:繁體中文
售價:441元

現代Web應用程序的用戶數量眾多,即使伺服器出現故障或有新伺服器上線,Web應用程序也需要繼續提供服務;Web應用程序需要在資源有限的情況下,將信息提供給分佈于全球的廣大用戶。「反應式應用程序」能適應部分失敗以及負載變化情形,並在變化多端的分散式環境中保持即時響應性;如何做到這一點呢?秘訣就在於「消息驅動的架構」以及各種設計模式。

《反應式設計模式》圍繞反應式宣言展開,講述什麼是反應式、為何需要反應式,以及反應式系統設計與開發中的一些常用模式,無論是軟體開發者還是系統架構師,都可從本書中汲取知識養分。書中提出許多真知灼見,勾勒出反應式應用程序、反應式系統以及反應式平台等概念,有場景、有故事、有概念、有實踐,令人沉醉其中,流連忘返。

《反應式設計模式》介紹反應式應用程序設計的原則、模式和經典實踐,講述如何用斷路器模式將運行緩慢的組件與其他組件隔開、如何用事務序列(Saga)模式實現多階段事務以及如何通過分片模式來劃分數據集,分析如何保持源代碼的可讀性以及系統的可測試性(即使在存在許多潛在交互和失敗點的情況下)。






第Ⅰ部分 簡介
第1章 為什麼需要反應式?
1.1 剖析反應式應用
1.2 應對負載
1.3 應對失敗
1.4 讓系統即時回應
1.5 避免大泥球
1.6 整合非反應式組件
1.7 小結
第2章 《反應式宣言》概覽
2.1 對用戶作出反應
2.1.1 理解傳統方法
2.1.2 使用共用資源的延遲分析
2.1.3 使用佇列限制大延遲
2.2 利用並行性
2.2.1 通過並行化降低延遲
2.2.2 使用可組合的Future改善並行性
2.2.3 為序列式執行表像買單
2.3 並存執行的限制
2.3.1 阿姆達爾定律
2.3.2 通用伸縮性法則
2.4 對失敗作出反應
2.4.1 劃分與隔離
2.4.2 使用斷路器
2.4.3 監督
2.5 放棄強一致性
2.5.1 ACID 2.0
2.5.2 接受最新
2.6 對反應式設計模式的需求
2.6.1 管理複雜性
2.6.2 使程式設計模型最貼近真實世界
2.7 小結
第3章 行業工具
3.1 反應式的早期解決方案
3.2 函數式程式設計
3.2.1 不可變性
3.2.2 引用透明性
3.2.3 副作用
3.2.4 函數作為一等公民
3.3 即時回應用戶
3.4 對反應式設計的現有支持
3.4.1 綠色執行緒
3.4.2 事件迴圈
3.4.3 通信順序進程
3.4.4 Future和Promise
3.4.5 反應式擴展工具包
3.4.6 Actor模型
3.5 小結

第Ⅱ部分 微言大義
第4章 消息傳遞
第5章 位置透明性
第6章 分而治之
第7章 原則性失敗處理
第8章 有界一致性
第9章 按需使用非確定性
第10章 消息流

第Ⅲ部分 設計模式
第11章 測試反應式應用程式
第12章 容錯及復原模式
第13章 複製模式
第14章 資源管理模式
第15章 消息流模式
第16章 流量控制模式
第17章 狀態管理和持久化模式

附錄A 反應式系統圖示
附錄B 一個虛構的案例
附錄C 《反應式宣言》正文


相關書籍