創新驅動設計:單體與微服務混合架構策略與實踐

婁麒麟 等

  • 出版商: 電子工業
  • 出版日期: 2024-03-01
  • 售價: $690
  • 貴賓價: 9.5$656
  • 語言: 簡體中文
  • 頁數: 288
  • ISBN: 7121473518
  • ISBN-13: 9787121473517
  • 相關分類: Microservices 微服務SOA
  • 立即出貨

商品描述

選擇微服務還是單體,這似乎是一個無須討論的話題,這個年代還有單體的存身之地嗎?沃恩和托馬什對此的回答是,不僅有,而且許多組織適合使用單體架構。兩位作者用一個貫穿全書的例子深入探討了面向戰略創新的架構設計問題。本書共12章,分4部分。第1部分從戰略高度介紹了架構決策的重要性及其帶來的影響,以及幾種戰略學習工具和事件優先建模。第2部分講述了推動業務創新的幾種工具,並對DDD進行了簡單的介紹。第3部分具體談論了事件優先架構和實現它的幾種方式。第4部分回答了微服務還是單體這個有爭議性的問題,討論了單體和微服務之間的比較與權衡,還探討瞭如何將單體遷移到微服務,並且為讀者可能採用的任何一種選擇都提供了合適的指南。本書適合需要進行架構決策的人閱讀,也適合想要精進業務的架構師和程序員閱讀。

目錄大綱

第1部分 通過實驗學習轉型戰略
第1章 業務目標和數字化轉型 5
數字化轉型的目標是什麽 6
軟件架構概覽 8
為什麽軟件項目會出問題 9
債務隱喻 10
軟件熵 11
大泥球 11
案例研究 13
當前的業務背景 14
商機 15
企業與康威定律 16
知識傳遞 17
知識不是實物 17
電話游戲 18
艱難的一致 19
但是一切皆有可能 20
(重新)思考軟件戰略 22
思考 22
反思 24
單體系統一定不好嗎 27
微服務一定好嗎 28
善待敏捷 30
擺脫困境 33
小結 34
第2章 基本戰略學習工具 35
決策的早晚和對錯 36
文化和團隊 39
失敗而不是死亡 40
失敗文化不是指責文化 41
康威定律的正確用法 43
啟用安全實驗 46
模塊化優先 47
部署放最後 50
介於兩者之間的一切 52
業務能力、業務流程和戰略目標 52
針對性的戰略交付 56
利用Cynefin進行決策 60
你的意大利面條在哪裡,煮得有多快 63
戰略架構 64
應用工具 65
小結 67
第3章 事件優先的實驗和發現 68
命令與事件 69
使用軟件模型 71
利用事件風暴快速學習 72
當需要遠程事件風暴會議時 74
主持會議 75
宏觀建模 79

應用工具 82
小結 88
第2部分 推動業務創新
第4章 獲得領域驅動的成果 94
領域和子域 96
小結 99
第5章 專業知識上下文 101
限界上下文和統一語言 101
核心子域 105
支撐子域、通用子域和技術機制 106
支撐子域 107
通用子域 107
技術機制 108
業務能力和上下文 108
別太大,也別太小 110
小結 112
第6章 映射的兩面:成功還是失敗 113
上下文映射圖 113
合作關系 115
共享內核 117
客戶方-供應方開發 118
遵奉者 120
防腐層 122
開放主機服務 123
發布語言 128
另謀他路 130
地形建模 130
失敗之道與成功之徑 133
應用工具 136
小結 141
第7章 建模領域概念 142
實體 143
值對象 144
聚合 145
領域服務 146
函數式行為 147
應用工具 149
小結 150
第3部分 事件優先架構
第8章 基礎架構 155
架構風格、模式和決策 157
埠-適配器架構 157
模塊化 163
REST請求-響應 166
質量屬性 168
安全性 168
隱私性 171
性能 173
可伸縮性 175
彈性:可靠性和容錯性 175
復雜性 177
應用工具 177
小結 178

第9章 消息驅動和事件驅動架構 179
基於消息和事件的REST 183
事件日誌 183
訂閱者輪詢 185
服務器發送事件 186
事件驅動和流程管理 187
事件溯源 189
CQRS 193
無服務器架構和功能即服務 195
應用工具 197
小結 197
第4部分 兩條通向目標架構之路
第10章 構造單體 203
歷史回顧 205
慎終於始 207
業務能力 208
架構決策 210
是與非 215
隨變化而變化 217
解耦 220
堅持正確的步伐 224
小結 225
第11章 從單體到微服務 227
做好心理建設 227
從模塊化單體到微服務 230
從大泥球單體到微服務 234
用戶交互 235
協調數據變化 237
決定絞殺什麽 242
拔掉遺留單體 244
小結 245
第12章 平衡要求,管控需求 246
質量屬性平衡 246
戰略和目標 247
業務目標呼喚數字化轉型 247
使用戰略學習工具 248
事件驅動的輕量級建模 249
推動業務創新 249
事件優先架構 250
單體架構作為首要關註點 250
有針對性地將單體拆分為微服務 251
平衡是不偏不倚的,創新是必不可少的 252
小結 252