書馨卡幫你省薪 2024個人購書報告 2024中圖網(wǎng)年度報告
歡迎光臨中圖網(wǎng) 請 | 注冊

反應(yīng)式設(shè)計模式

出版社:清華大學(xué)出版社出版時間:2018-11-01
開本: 16開 頁數(shù): 362
中 圖 價:¥53.9(5.5折) 定價  ¥98.0 登錄后可看到會員價
加入購物車 收藏
運費6元,滿39元免運費
?新疆、西藏除外
本類五星書更多>
買過本商品的人還買了

反應(yīng)式設(shè)計模式 版權(quán)信息

反應(yīng)式設(shè)計模式 本書特色

現(xiàn)代Web應(yīng)用程序的用戶數(shù)量眾多,即使服務(wù)器出現(xiàn)故障或有新服務(wù)器上線,Web應(yīng)用程序也需要繼續(xù)提供服務(wù);Web應(yīng)用程序需要在資源有限的情況下,將信息提供給分布于全球的廣大用戶!胺磻(yīng)式應(yīng)用程序”能適應(yīng)部分失敗以及負載變化情形,并在變化多端的分布式環(huán)境中保持即時響應(yīng)性;如何做到這一點呢?秘訣就在于“消息驅(qū)動的架構(gòu)”以及各種設(shè)計模式。 《反應(yīng)式設(shè)計模式》圍繞反應(yīng)式宣言展開,講述什么是反應(yīng)式、為何需要反應(yīng)式,以及反應(yīng)式系統(tǒng)設(shè)計與開發(fā)中的一些常用模式,無論是軟件開發(fā)者還是系統(tǒng)架構(gòu)師,都可從本書中汲取知識養(yǎng)分。書中提出許多真知灼見,勾勒出反應(yīng)式應(yīng)用程序、反應(yīng)式系統(tǒng)以及反應(yīng)式平臺等概念,有場景、有故事、有概念、有實踐,令人沉醉其中,流連忘返。

反應(yīng)式設(shè)計模式 內(nèi)容簡介

《反應(yīng)式設(shè)計模式》介紹反應(yīng)式應(yīng)用程序設(shè)計的原則、模式和經(jīng)典實踐,講述如何用斷路器模式將運行緩慢的組件與其他組件隔開、如何用事務(wù)序列(Saga)模式實現(xiàn)多階段事務(wù)以及如何通過分片模式來劃分?jǐn)?shù)據(jù)集,分析如何保持源代碼的可讀性以及系統(tǒng)的可測試性(即使在存在許多潛在交互和失敗點的情況下)。 主要內(nèi)容 ? “反應(yīng)式宣言”很好不錯指南 ? 流量控制、有界一致性、容錯等模式 ? 得之不易的關(guān)于“什么行不通”的經(jīng)驗 ? 在巨大的負載下保持伸縮性的架構(gòu)

反應(yīng)式設(shè)計模式 目錄

目 錄 第Ⅰ部分 簡介 第1章 為什么需要反應(yīng)式? 3 1.1 剖析反應(yīng)式應(yīng)用 5 1.2 應(yīng)對負載 6 1.3 應(yīng)對失敗 7 1.4 讓系統(tǒng)即時響應(yīng) 9 1.5 避免大泥球 10 1.6 整合非反應(yīng)式組件 11 1.7 小結(jié) 12 第2章 《反應(yīng)式宣言》概覽 13 2.1 對用戶作出反應(yīng) 13 2.1.1 理解傳統(tǒng)方法 14 2.1.2 使用共享資源的延遲分析 16 2.1.3 使用隊列限制*大延遲 17 2.2 利用并行性 18 2.2.1 通過并行化降低延遲 19 2.2.2 使用可組合的Future改善并行性 21 2.2.3 為序列式執(zhí)行表象買單 22 2.3 并行執(zhí)行的限制 24 2.3.1 阿姆達爾定律 24 2.3.2 通用伸縮性法則 25 2.4 對失敗作出反應(yīng) 26 2.4.1 劃分與隔離 28 2.4.2 使用斷路器 29 2.4.3 監(jiān)督 30 2.5 放棄強一致性 32 2.5.1 ACID 2.0 33 2.5.2 接受更新 34 2.6 對反應(yīng)式設(shè)計模式的需求 35 2.6.1 管理復(fù)雜性 36 2.6.2 使編程模型更貼近真實世界 37 2.7 小結(jié) 38 第3章 行業(yè)工具 39 3.1 反應(yīng)式的早期解決方案 39 3.2 函數(shù)式編程 41 3.2.1 不可變性 42 3.2.2 引用透明性 44 3.2.3 副作用 45 3.2.4 函數(shù)作為一等公民 46 3.3 即時響應(yīng)用戶 47 3.4 對反應(yīng)式設(shè)計的現(xiàn)有支持 49 3.4.1 綠色線程 49 3.4.2 事件循環(huán) 50 3.4.3 通信順序進程 51 3.4.4 Future和Promise 53 3.4.5 反應(yīng)式擴展工具包 58 3.4.6 Actor模型 59 3.5 小結(jié) 64 第Ⅱ部分 微言大義 第4章 消息傳遞 67 4.1 消息 67 4.2 垂直伸縮 68 4.3 “基于事件”與“基于消息” 69 4.4 “同步”與“異步” 71 4.5 流量控制 73 4.6 送達保證 75 4.7 作為消息的事件 77 4.8 同步消息傳遞 79 4.9 小結(jié) 79 第5章 位置透明性 81 5.1 什么是位置透明性? 81 5.2 透明化遠程處理的謬誤 82 5.3 基于顯式消息傳遞的糾正方案 83 5.4 優(yōu)化本地消息傳遞 84 5.5 消息丟失 85 5.6 水平擴展性 87 5.7 位置透明性使測試更加簡單 88 5.8 動態(tài)組合 88 5.9 小結(jié) 90 第6章 分而治之 91 6.1 分層拆解問題 92 6.2 “依賴”與“子模塊” 94 6.3 構(gòu)建你自己的大公司 96 6.4 規(guī)范和測試的優(yōu)點 97 6.5 水平擴展性和垂直伸縮性 98 6.6 小結(jié) 99 第7章 原則性失敗處理 101 7.1 所有權(quán)意味著承諾 101 7.2 所有權(quán)隱含生命周期控制 103 7.3 所有級別上的回彈性 104 7.4 小結(jié) 105 第8章 有界一致性 107 8.1 封裝模塊糾正方案 108 8.2 根據(jù)事務(wù)邊界對數(shù)據(jù)和行為進行分組 109 8.3 跨事務(wù)邊界建模工作流 109 8.4 失敗單元即一致性單元 110 8.5 分離職責(zé) 111 8.6 堅持一致性的隔離范圍 113 8.7 小結(jié) 114 第9章 按需使用非確定性 115 9.1 邏輯編程和聲明式數(shù)據(jù)流 115 9.2 函數(shù)式反應(yīng)式編程 117 9.3 不共享簡化并發(fā) 118 9.4 共享狀態(tài)的并發(fā) 119 9.5 如何窘境突圍? 119 9.6 小結(jié) 121 第10章 消息流 123 10.1 推動數(shù)據(jù)向前流動 123 10.2 模型化領(lǐng)域流程 125 10.3 認(rèn)清回彈性的局限性 125 10.4 估計速率和部署規(guī)模 126 10.5 為流量控制進行規(guī)劃 127 10.6 小結(jié) 127 第Ⅲ部分 設(shè)計模式 第11章 測試反應(yīng)式應(yīng)用程序 131 11.1 如何測試 131 11.1.1 單元測試 132 11.1.2 組件測試 133 11.1.3 聯(lián)動測試 133 11.1.4 集成測試 133 11.1.5 用戶驗收測試 134 11.1.6 黑盒測試與白盒測試 134 11.2 測試環(huán)境 135 11.3 異步測試 136 11.3.1 提供阻塞的消息接收者 137 11.3.2 選擇超時時間的難題 139 11.3.3 斷言消息的缺失 145 11.3.4 提供同步執(zhí)行引擎 146 11.3.5 異步斷言 148 11.3.6 完全異步的測試 149 11.3.7 斷言沒有發(fā)生異步錯誤 151 11.4 測試非確定性系統(tǒng) 154 11.4.1 執(zhí)行計劃的麻煩 155 11.4.2 測試分布式組件 155 11.4.3 模擬Actor 156 11.4.4 分布式組件 157 11.5 測試彈性 157 11.6 測試回彈性 158 11.6.1 應(yīng)用程序回彈性 158 11.6.2 基礎(chǔ)設(shè)施的回彈性 162 11.7 測試即時響應(yīng)性 164 11.8 小結(jié) 165 第12章 容錯及恢復(fù)模式 167 12.1 簡單組件模式 167 12.1.1 問題設(shè)定 168 12.1.2 模式應(yīng)用 168 12.1.3 模式回顧 170 12.1.4 適用性 171 12.2 錯誤內(nèi)核模式 171 12.2.1 問題設(shè)定 172 12.2.2 模式應(yīng)用 172 12.2.3 模式回顧 175 12.2.4 適用性 176 12.3 放任崩潰模式 176 12.3.1 問題設(shè)定 177 12.3.2 模式應(yīng)用 177 12.3.3 模式回顧 178 12.3.4 實現(xiàn)上的考慮 179 12.3.5 推論:心跳模式 180 12.3.6 推論:主動失敗信號模式 180 12.4 斷路器模式 181 12.4.1 問題設(shè)定 182 12.4.2 模式應(yīng)用 182 12.4.3 模式回顧 186 12.4.4 適用性 187 12.5 小結(jié) 187 第13章 復(fù)制模式 189 13.1 主動-被動復(fù)制模式 190 13.1.1 問題設(shè)定 190 13.1.2 模式應(yīng)用 191 13.1.3 模式回顧 203 13.1.4 適用性 204 13.2 多主復(fù)制模式 204 13.2.1 基于共識的復(fù)制 205 13.2.2 具有沖突檢測與處理方案的復(fù)制方式 208 13.2.3 無沖突的可復(fù)制數(shù)據(jù)類型 210 13.3 主動-主動復(fù)制模式 217 13.3.1 問題設(shè)定 218 13.3.2 模式應(yīng)用 218 13.3.3 模式回顧 225 13.3.4 與虛擬同步模型的關(guān)系 226 13.4 小結(jié) 227 第14章 資源管理模式 229 14.1 資源封裝模式 229 14.1.1 問題設(shè)定 230 14.1.2 模式應(yīng)用 230 14.1.3 模式回顧 236 14.1.4 適用性 237 14.2 資源借貸模式 237 14.2.1 問題設(shè)定 238 14.2.2 模式應(yīng)用 238 14.2.3 模式回顧 240 14.2.4 適用性 241 14.2.5 實現(xiàn)上的考慮 242 14.2.6 變體:使用資源借貸模式進行局部公開 242 14.3 復(fù)雜命令模式 243 14.3.1 問題設(shè)定 243 14.3.2 模式應(yīng)用 244 14.3.3 模式回顧 251 14.3.4 適用性 252 14.4 資源池模式 252 14.4.1 問題設(shè)定 253 14.4.2 模式應(yīng)用 253 14.4.3 模式回顧 255 14.4.4 實現(xiàn)上的考慮 256 14.5 托管阻塞模式 257 14.5.1 問題設(shè)定 257 14.5.2 模式應(yīng)用 258 14.5.3 模式回顧 260 14.5.4 適用性 261 14.6 小結(jié) 262 第15章 消息流模式 263 15.1 請求-響應(yīng)模式 264 15.1.1 問題設(shè)定 264 15.1.2 模式應(yīng)用 265 15.1.3 該模式的常見實例 267 15.1.4 模式回顧 272 15.1.5 適用性 272 15.2 消息自包含模式 273 15.2.1 問題設(shè)定 273 15.2.2 模式應(yīng)用 274 15.2.3 模式回顧 276 15.2.4 適用性 277 15.3 詢問模式 277 15.3.1 問題設(shè)定 278 15.3.2 模式應(yīng)用 278 15.3.3 模式回顧 281 15.3.4 適用性 283 15.4 轉(zhuǎn)發(fā)流模式 283 15.4.1 問題設(shè)定 283 15.4.2 模式應(yīng)用 284 15.4.3 模式回顧 284 15.4.4 適用性 285 15.5 聚合器模式 285 15.5.1 問題設(shè)定 285 15.5.2 模式應(yīng)用 286 15.5.3 模式回顧 289 15.5.4 適用性 290 15.6 事務(wù)序列模式 290 15.6.1 問題設(shè)定 291 15.6.2 模式應(yīng)用 291 15.6.3 模式回顧 293 15.6.4 適用性 294 15.7 業(yè)務(wù)握手協(xié)議(或可靠投遞模式) 294 15.7.1 問題設(shè)定 295 15.7.2 模式應(yīng)用 295 15.7.3 模式回顧 300 15.7.4 適用性 301 15.8 小結(jié) 301 第16章 流量控制模式 303 16.1 拉取模式 303 16.1.1 問題設(shè)定 304 16.1.2 模式應(yīng)用 304 16.1.3 模式回顧 306 16.1.4 適用性 307 16.2 托管隊列模式 307 16.2.1 問題設(shè)定 308 16.2.2 模式應(yīng)用 308 16.2.3 模式回顧 310 16.2.4 適用性 310 16.3 丟棄模式 311 16.3.1 問題設(shè)定 311 16.3.2 模式應(yīng)用 311 16.3.3 模式回顧 313 16.3.4 適用性 316 16.4 限流模式 316 16.4.1 問題設(shè)定 316 16.4.2 模式應(yīng)用 317 16.4.3 模式回顧 320 16.5 小結(jié) 320 第17章 狀態(tài)管理和持久化模式 321 17.1 領(lǐng)域?qū)ο竽J? 321 17.1.1 問題設(shè)定 322 17.1.2 模式應(yīng)用 322 17.1.3 模式回顧 326 17.2 分片模式 326 17.2.1 問題設(shè)定 326 17.2.2 模式應(yīng)用 327 17.2.3 模式回顧 329 17.2.4 重要警告 329 17.3 事件溯源模式 330 17.3.1 問題設(shè)定 330 17.3.2 模式應(yīng)用 330 17.3.3 模式回顧 333 17.3.4 適用性 333 17.4 事件流模式 334 17.4.1 問題設(shè)定 334 17.4.2 模式應(yīng)用 334 17.4.3 模式回顧 336 17.4.4 適用性 337 17.5 小結(jié) 337 附錄A 反應(yīng)式系統(tǒng)圖示 339 附錄B 一個虛構(gòu)的案例 341 附錄C 《反應(yīng)式宣言》正文 355
展開全部

反應(yīng)式設(shè)計模式 作者簡介

Roland Kuhn博士曾在慕尼黑工業(yè)大學(xué)學(xué)習(xí)物理專業(yè),獲得了博士學(xué)位;在歐洲核子研究中心(瑞士日內(nèi)瓦)的高能粒子物理實驗中,發(fā)表了關(guān)于核子的膠子自旋結(jié)構(gòu)測量的博士專題論文。該實驗需要使用和實現(xiàn)大型計算集群以及快速的數(shù)據(jù)處理網(wǎng)絡(luò),這也為Roland透徹理解分布式計算奠定了基礎(chǔ)。此后,Roland博士在德國空間運營中心工作了4年,負責(zé)建設(shè)軍事衛(wèi)星的控制中心和地面基礎(chǔ)設(shè)施。再后來,他加入Lightbend(之前叫做Typesafe)公司,在2012年11月到2016年3月期間負責(zé)帶領(lǐng)Akka團隊。在此期間,他與Martin Odersky和Erik Meijer一起在Coursera平臺上講授Principles of Reactive Programming課程,這門課程的學(xué)員超過12萬人。Roland與Jonas Bonér等人共同撰寫了第一版的《反應(yīng)式宣言》,該宣言于2013年6月發(fā)表。目前,Roland是Actyx的首席技術(shù)官及聯(lián)合創(chuàng)始人,Actyx是一家總部位于慕尼黑的公司,致力于使歐洲的各類中小型制造企業(yè)享受到現(xiàn)代反應(yīng)式系統(tǒng)的福澤。 Brian Hanafee在加利福尼亞大學(xué)伯克利分校獲得電氣工程與計算機科學(xué)學(xué)士學(xué)位,現(xiàn)任富國銀行的首席系統(tǒng)架構(gòu)師,負責(zé)設(shè)計網(wǎng)上銀行和支付系統(tǒng),并長期引領(lǐng)公司的技術(shù)門檻提升。此前,Brian曾在甲骨文公司工作,致力于研究新興產(chǎn)品、互動電視系統(tǒng)以及文本處理系統(tǒng)。Brian也曾任博思艾倫咨詢公司的咨詢師,并曾在ADS公司將人工智能技術(shù)應(yīng)用到軍事規(guī)劃系統(tǒng)中。Brian還為第一代彈射安全的頭盔綜合顯示系統(tǒng)編寫了軟件。 Jamie Allen是星巴克UCP項目的技術(shù)總監(jiān),致力于以跨運營模式、跨地域的方式,為星巴克公司各地的消費者重新定義數(shù)字體驗。他是Effective Akka一書的作者,曾與Roland和Jonas一起在Lightbend公司工作4年以上。Jamie自2008年以來一直從事Scala和Actor開發(fā)工作,與世界各地的客戶合作,幫助他們理解和采用反應(yīng)式系統(tǒng)設(shè)計。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網(wǎng)
在線客服