91精品国产综合久久四虎久久_国产成人午夜高潮毛片_99er视频精品免费观看_2020亚洲熟女在线观看_日本女优人体写真_国内黄色毛片_年轻的老师中文版在线_丰满女邻居做爰_久久久久久精品成人免费图片

 
重構(gòu)到微服務(wù)
重構(gòu)到微服務(wù)
Sam Newman
王威, 梅雪松, 姚琪琳 譯
出版時間:2023年08月
頁數(shù):262
“在這本書中,本書作者為微服務(wù)改造定義了清晰的愿景,并且向你展示了在改造過程中需要注意哪些‘坑’(既有很明顯的,也有一些比較隱蔽的)。同時,本書也提供了很多組織革新、架構(gòu)革新、技術(shù)革新方面非常有用的參考模式?!?br /> ——Daniel Bryant
DataWire和InfoQ的技術(shù)顧問

對于單體系統(tǒng),你是如何來進行梳理并且逐步將它演進到微服務(wù)架構(gòu)的呢?你是如何在保證業(yè)務(wù)正常進行的同時來做這件事的?作為其暢銷著作《Building Microservices》的姊妹篇,這本書詳細闡釋了一種從存量的單體應(yīng)用遷移到微服務(wù)架構(gòu)的可行方法。
本書作為一本改造指南,提供了大量針對如何將單體應(yīng)用演進到微服務(wù)架構(gòu)的實操建議。書中包含了大量圖形化的示例、充滿洞見的改造模式、涉及從改造的初始規(guī)劃階段到應(yīng)用系統(tǒng)和數(shù)據(jù)庫的解耦,涵蓋了許多場景和策略,它們將幫助你實現(xiàn)成功的改造。你將從本書中學(xué)到這些經(jīng)過實踐檢驗過的模式和技巧。在改造過程,你一定會發(fā)現(xiàn)它們非常有價值。
● 適合于期望演進到微服務(wù),而不是重寫的組織。
● 幫助組織決策是否要改造、何時改造、以及從哪里入手進行改造。
● 如何解決遺留系統(tǒng)的通信、集成和遷移問題。
● 闡述了若干不同的遷移模式,以及在什么情況下采用這些模式。
● 提供了多種數(shù)據(jù)庫遷移方法的案例,以及對應(yīng)的同步機制。
● 探索了應(yīng)用系統(tǒng)解耦的方法,包括若干架構(gòu)重構(gòu)的模式。
● 深入探討了數(shù)據(jù)庫解耦的細節(jié),包括打破參照完整性和事務(wù)完整性的影響,新的失敗模式等。
  1. 前言
  2. 第1章 剛剛好的微服務(wù)
  3. 1.1 什么是微服務(wù)?
  4. 1.1.1 部署獨立性
  5. 1.1.2 圍繞業(yè)務(wù)領(lǐng)域建模
  6. 1.1.3 擁有自己的數(shù)據(jù)
  7. 1.1.4 微服務(wù)將帶來哪些優(yōu)勢?
  8. 1.1.5 微服務(wù)會帶來什么問題?
  9. 1.1.6 用戶界面
  10. 1.1.7 技術(shù)
  11. 1.1.8 顆粒度
  12. 1.1.9 所有權(quán)
  13. 1.2 單體架構(gòu)
  14. 1.2.1 單進程單體
  15. 1.2.2 分布式單體
  16. 1.2.3 第三方黑盒系統(tǒng)
  17. 1.2.4 單體架構(gòu)的挑戰(zhàn)
  18. 1.2.5 單體的優(yōu)勢
  19. 1.3 關(guān)于耦合和內(nèi)聚
  20. 1.3.1 內(nèi)聚
  21. 1.3.2 耦合
  22. 1.4 剛剛好的領(lǐng)域驅(qū)動設(shè)計
  23. 1.4.1 聚合
  24. 1.4.2 限界上下文
  25. 1.4.3 將聚合和限界上下文映射到微服務(wù)
  26. 1.4.4 延伸閱讀
  27. 1.5 總結(jié)
  28. 第2章 規(guī)劃遷移到微服務(wù)的過程
  29. 2.1 理解目標
  30. 2.2 為什么要選擇微服務(wù)?
  31. 2.2.1 提高團隊自主性
  32. 2.2.2 縮短上市時間
  33. 2.2.3 經(jīng)濟高效地擴展負載
  34. 2.2.4 提高健壯性
  35. 2.2.5 擴展開發(fā)人員的數(shù)量
  36. 2.2.6 擁抱新技術(shù)
  37. 2.3 什么時候微服務(wù)可能是個壞主意?
  38. 2.3.1 不明確的業(yè)務(wù)領(lǐng)域
  39. 2.3.2 初創(chuàng)公司
  40. 2.3.3 客戶安裝和管理的軟件
  41. 2.3.4 沒有好的理由!
  42. 2.4 權(quán)衡利弊
  43. 2.5 帶人踏上旅途
  44. 2.6 改變組織
  45. 2.6.1 建立緊迫感
  46. 2.6.2 組建領(lǐng)導(dǎo)團隊
  47. 2.6.3 制定愿景和戰(zhàn)略
  48. 2.6.4 傳達變革愿景
  49. 2.6.5 善于授權(quán)賦能
  50. 2.6.6 快速得到成果
  51. 2.6.7 促進變革深入
  52. 2.6.8 成果融入文化
  53. 2.7 增量遷移的重要性
  54. 2.8 變更成本
  55. 2.8.1 可逆和不可逆的決定
  56. 2.8.2 更容易實驗的地方
  57. 2.9 那么我們從哪里開始呢?
  58. 2.10 領(lǐng)域驅(qū)動設(shè)計
  59. 2.10.1 你需要走多遠?
  60. 2.10.2 事件風暴
  61. 2.10.3 利用領(lǐng)域模型進行優(yōu)先級排序
  62. 2.11 一個組合模型
  63. 2.12 重組團隊
  64. 2.12.1 改變團隊結(jié)構(gòu)
  65. 2.12.2 不要一刀切
  66. 2.12.3 做出改變
  67. 2.12.4 改變技能
  68. 2.13 你如何知道轉(zhuǎn)型成功與否?
  69. 2.13.1 有定期檢查點
  70. 2.13.2 定量度量
  71. 2.13.3 定性度量
  72. 2.13.4 避免沉沒成本誤區(qū)
  73. 2.13.5 對新方法持開放態(tài)度
  74. 2.14 總結(jié)
  75. 第3章 拆分單體
  76. 3.1 單體系統(tǒng),修改還是不修改?
  77. 3.1.1 剪切、復(fù)制或者重新開發(fā)?
  78. 3.1.2 重構(gòu)單體系統(tǒng)
  79. 3.2 遷移模式
  80. 3.3 模式:絞殺應(yīng)用
  81. 3.3.1 它是如何工作的
  82. 3.3.2 在哪里使用它
  83. 3.3.3 示例:HTTP反向代理
  84. 3.3.4 數(shù)據(jù)
  85. 3.3.5 代理選項
  86. 3.3.6 更改協(xié)議
  87. 3.3.7 示例:FTP
  88. 3.3.8 示例:消息攔截
  89. 3.3.9 其他協(xié)議
  90. 3.3.10 絞殺植物模式的其他例子
  91. 3.4 遷移功能時改變行為
  92. 3.5 模式:UI組合
  93. 3.5.1 示例:頁面組合
  94. 3.5.2 示例:小部件(Widget)組合
  95. 3.5.3 示例:微前端
  96. 3.5.4 在哪里使用它
  97. 3.6 模式:抽象分支
  98. 3.6.1 它是如何工作的
  99. 3.6.2 作為后備機制
  100. 3.6.3 在哪里使用它
  101. 3.7 模式:并行運行
  102. 3.7.1 示例:比較信用衍生品定價
  103. 3.7.2 示例:Homegate列表
  104. 3.7.3 驗證技術(shù)
  105. 3.7.4 使用Spy
  106. 3.7.5 GitHub Scientist
  107. 3.7.6 灰度發(fā)布與金絲雀發(fā)布
  108. 3.7.7 在哪里使用它
  109. 3.8 模式:裝飾合作者
  110. 3.8.1 示例:會員計劃
  111. 3.8.2 在哪里使用它
  112. 3.9 模式:變更數(shù)據(jù)捕獲
  113. 3.9.1 示例:發(fā)行會員卡
  114. 3.9.2 實現(xiàn)變更數(shù)據(jù)捕獲
  115. 3.9.3 在哪里使用它
  116. 3.10 總結(jié)
  117. 第4章 分解數(shù)據(jù)庫
  118. 4.1 模式:共享數(shù)據(jù)庫
  119. 4.1.1 應(yīng)對模式
  120. 4.1.2 何處使用
  121. 4.2 但這是不可能做到的!
  122. 4.3 模式:數(shù)據(jù)庫視圖
  123. 4.3.1 數(shù)據(jù)庫即公共契約
  124. 4.3.2 通過視圖來對外展現(xiàn)
  125. 4.3.3 限制條件
  126. 4.3.4 所有權(quán)
  127. 4.3.5 何處使用
  128. 4.4 模式:數(shù)據(jù)庫包裝服務(wù)
  129. 4.5 模式:數(shù)據(jù)庫即服務(wù)接口
  130. 4.5.1 實現(xiàn)映射引擎
  131. 4.5.2 與視圖相比
  132. 4.5.3 何處使用
  133. 4.6 轉(zhuǎn)讓所有權(quán)
  134. 4.6.1 模式:暴露單體中的聚合
  135. 4.6.2 模式:變更數(shù)據(jù)所有權(quán)
  136. 4.7 數(shù)據(jù)同步
  137. 4.8 模式:在應(yīng)用程序中同步數(shù)據(jù)
  138. 4.8.1 步驟1:批量同步數(shù)據(jù)
  139. 4.8.2 步驟2:同步寫入,從舊表結(jié)構(gòu)中讀取
  140. 4.8.3 步驟3:同步寫入,從新表結(jié)構(gòu)中讀取
  141. 4.8.4 在哪里使用它(一)
  142. 4.8.5 在哪里使用它(二)
  143. 4.9 模式:追蹤器寫入
  144. 4.9.1 數(shù)據(jù)同步
  145. 4.9.2 案例:Square的訂單
  146. 4.9.3 在哪里使用它
  147. 4.10 拆分數(shù)據(jù)庫
  148. 4.11 先拆分數(shù)據(jù)庫,還是先拆分代碼?
  149. 4.11.1 先拆分數(shù)據(jù)庫
  150. 4.11.2 先拆分代碼
  151. 4.11.3 將數(shù)據(jù)庫和代碼一起拆分
  152. 4.11.4 那么,我應(yīng)該先拆分哪個?
  153. 4.12 表結(jié)構(gòu)拆分示例
  154. 4.13 模式:拆分表
  155. 4.14 模式:將外鍵關(guān)系移動到代碼中
  156. 4.14.1 移動連表查詢
  157. 4.14.2 數(shù)據(jù)一致性
  158. 4.14.3 在哪里使用
  159. 4.14.4 示例:共享靜態(tài)數(shù)據(jù)
  160. 4.15 事務(wù)
  161. 4.15.1 ACID事務(wù)
  162. 4.15.2 仍然保持ACID,但缺乏整體的原子性?
  163. 4.15.3 兩階段提交
  164. 4.15.4 對分布式事務(wù)說不
  165. 4.16 saga
  166. 4.16.1 saga的失敗模式
  167. 4.16.2 實施saga
  168. 4.16.3 saga與分布式事務(wù)
  169. 4.17 總結(jié)
  170. 第5章 成長的煩惱
  171. 5.1 服務(wù)越多,痛苦越多
  172. 5.2 規(guī)模化下的所有權(quán)
  173. 5.2.1 這個問題如何表現(xiàn)出來?
  174. 5.2.2 這個問題什么時候會發(fā)生?
  175. 5.2.3 潛在的解決方案
  176. 5.3 破壞性變更
  177. 5.3.1 這個問題如何表現(xiàn)出來?
  178. 5.3.2 這個問題什么時候會發(fā)生?
  179. 5.3.3 潛在的解決方案
  180. 5.4 報表
  181. 5.4.1 這個問題什么時候會發(fā)生?
  182. 5.4.2 潛在的解決方案
  183. 5.5 監(jiān)控和故障排除
  184. 5.5.1 什么時候會出現(xiàn)這些問題?
  185. 5.5.2 這些問題是如何發(fā)生的?
  186. 5.5.3 潛在的解決方案
  187. 5.6 本地開發(fā)者體驗
  188. 5.6.1 這個問題如何表現(xiàn)出來?
  189. 5.6.2 什么時候會出現(xiàn)這些問題?
  190. 5.6.3 潛在的解決方案
  191. 5.7 運行太多東西
  192. 5.7.1 這個問題如何表現(xiàn)出來?
  193. 5.7.2 這個問題什么時候會發(fā)生?
  194. 5.7.3 潛在的解決方案
  195. 5.8 端到端測試
  196. 5.8.1 這個問題如何表現(xiàn)出來?
  197. 5.8.2 這個問題什么時候會發(fā)生?
  198. 5.8.3 潛在的解決方案
  199. 5.9 全局與局部優(yōu)化
  200. 5.9.1 這個問題如何表現(xiàn)出來?
  201. 5.9.2 這個問題什么時候會發(fā)生?
  202. 5.9.3 潛在的解決方案
  203. 5.10 健壯性和彈性
  204. 5.10.1 這個問題如何表現(xiàn)出來?
  205. 5.10.2 這個問題什么時候會發(fā)生?
  206. 5.10.3 潛在的解決方案
  207. 5.11 孤兒服務(wù)
  208. 5.11.1 這個問題如何表現(xiàn)出來?
  209. 5.11.2 這個問題什么時候會發(fā)生?
  210. 5.11.3 潛在的解決方案
  211. 5.12 總結(jié)
  212. 第6章 結(jié)語
  213. 附錄A 參考書目
  214. 附錄B 模式列表
書名:重構(gòu)到微服務(wù)
作者:Sam Newman
譯者:王威, 梅雪松, 姚琪琳 譯
國內(nèi)出版社:中國電力出版社
出版時間:2023年08月
頁數(shù):262
書號:978-7-5198-7950-1
原版書書名:Monolith to Microservices
原版書出版商:O'Reilly Media
Sam Newman
 
Sam Newman是一名開發(fā)者、架構(gòu)師、作家和演講者,曾與全球不同業(yè)務(wù)領(lǐng)域的多家公司合作。他目前獨立工作,主要關(guān)注云、持續(xù)交付和微服務(wù)的相關(guān)技術(shù)。在這本書之前,他寫了暢銷的《Building Microservices》,也是由O’Reilly出版。
當他沒有在不同的業(yè)界潮流概念之間弄潮之時,你可以在東肯特郡的鄉(xiāng)村找到他,以及他所熱衷的多種體育活動。
 
 
本書封面上的動物是刺菜花水母(學(xué)名:Drymonema dalmatinum)。這種亞熱帶水母生活在大西洋中部和地中海地區(qū)。它于1880年首次在克羅地亞(當時的達爾馬提亞)海岸被確認。自二戰(zhàn)以來,看到刺菜花水母的情況很少, 但2014年在意大利海岸有人拍攝到一個巨大的標本。
這種水母也被親切的稱為“大粉紅”,因為它的褐粉色的顏色和令人印象深刻的尺寸——直徑可達三英尺。其所屬類的名稱Scyphozoa來自一個希臘詞,意思是“杯子”,借指動物的身體形狀。Medusozoa亞門的名稱來自水母的長觸角,它類似于從神話中的怪物頭上長出的蛇。
像其他水母一樣,刺菜花水母同時使用有性和無性繁殖。在有性繁殖中,雄性釋放精子,雌性釋放卵子,然后在水中連接。受精卵成為息肉,息肉在成熟前通過出芽進行無性繁殖。據(jù)了解,刺花水母以其他水母為食,通常是月水母。
水母只在咸水體中發(fā)現(xiàn),從不在淡水中發(fā)現(xiàn)。
奧萊利封面上的許多動物都瀕臨滅絕;所有這些動物對世界都很重要。
封面插圖由Karen Montgomery創(chuàng)作,基于Medusae of the World中的一張黑白圖片。
購買選項
定價:98.00元
書號:978-7-5198-7950-1
出版社:中國電力出版社