易燃物匯聚 YouTube 有聲書與書評
持續交付:發佈可靠軟件的系統方法 封面

持續交付:發佈可靠軟件的系統方法

Jez Humble David Farley

6614人在讀
36.9萬字總字數
¥44.5定價

有聲書與視頻解讀 YouTube視頻解讀 16

內容簡介

《持續交付:發佈可靠軟件的系統方法》講述如何實現更快、更可靠、低成本的自動化軟件交付,描述瞭如何通過增加反饋,並改進開發人員、測試人員、運維人員和項目經理之間的協作來達到這個目標。《持續交付:發佈可靠軟件的系統方法》由三部分組成。第 一部分闡述了持續交付背後的一些原則,以及支持這些原則的實踐。第 二部分是本書的核心,全面講述了部署流水線。第三部分圍繞部署流水線的投入產出討論了更多細節,包括增量開發技術、高 級版本控制模式,以及基礎設施、環境和數據的管理和組織治理。《持續交付:發佈可靠軟件的系統方法》適合所有開發人員、測試人員、運維人員和項目經理學習參考。

讀者書評

★★★★★

1.極其全面闡述《持續交付》的一本書,包含從代碼提交到發佈上線全過程的要點、最佳實踐和細節討論,能夠使人讀後建立一個系統化的認知。 2.由於此,閱讀本書顯得很費力,因爲細節非常之多。所以可以選擇性閱讀第一章和第五章、第十五章,形成整體認知後,快速瀏覽其他章節,至於很細節的內容就作爲工具書使用了。 3.核心:a。爲什麼要做持續交付?本質目的是儘早及時持續交付價值,使得客戶滿意;b,持續交付的衡量指標?可用版本的cycle time,即客戶用戶故事確認到最終可以體驗或使用所需要的時間。這是核心競爭力;c,關鍵原則是什麼?正如持續交付中的持續所言,必須遵從不斷交付的原則,遇到的問題都應該想辦法解決,而非放棄這一原則;d,哪些因素影響持續交付?重要因素有七個:採用的組織治理模式,比如是否採用敏捷開發模式,開發、測試、運維人員是否融合在一起,還是說處於零和博弈狀態;版本控制模式,最佳的方式是分支開發、主幹發佈,使用DVCS這種版本控制系統達到既實現並行高效開發,又頻繁合併實現持續交付;測試策略,是否採用了自動化測試;技術架構,是否使用了松耦合的架構,比如微服務;部署模型,是否採用了AB測試、灰度上線等可以允許發佈代碼直接上線的實踐;基礎設施,使用採用與應用相對解耦的基礎設施管理,甚至剝離其關係,尤其是IaaS和PaaS的採用,使得基礎設施不再費時;數據庫,是否做到有效的數據管理,減少對數據的依賴。

★★★★★

非常厚實的一本書。概述持續集成與持續交付,然後開始按照各個板塊進行分述。具體內容詳見目錄。 整本書讀完,我並並沒有很懂。因爲這本書實在太“厚實”了。本書主要圍繞軟件交付這一軟件生命週期的關鍵步驟進行論述。分析軟件交付的問題,持續集成,測試,研發策略,團隊管理,部署配置管理,團隊管理等多方面的內容。 核心思想在於持續交付可運行的的軟件版本。 本書提倡: 高頻持續集成, 儘快獲得集成反饋, 立刻修復集成檢測發現的缺陷, 高度自動化管理避免人爲錯誤, ... 全書還有大量優秀的指導思想需要通過持續學習與實踐才能習得。第一次閱讀就先收下這些。

★★★★☆

雖然這本書作者十年前就寫成了,但是今天讀起來也不過時,因爲很多理論基本上今天還在指導實踐。 我大概閱讀了一遍,感覺本書內容豐富,作者知識面廣,很多思想可以直接吸收使用,總之是一本不錯的工具書,可以時常翻翻。

★★★★★

在不當build release engineer的第七年,我又重新讀了一遍這本書,收穫還是滿滿,作者用自己的實踐介紹了從設計到部署中的最佳實踐,總結的經驗教訓幾乎每個我都認同,可以作爲ops工程師的聖經、雖然他已經是7,8年前寫出來的了

★★★☆☆

原書的確是一本很經典的CI/CD的工程能效知識書籍,只可惜中文版本翻譯的的確太差... 令人時常讀起來搞不清楚狀況,但翻一下原文就很清楚,甚至有時候還出現翻譯錯誤的情況。翻譯要講究一個信、雅、達... 既是對原書作者的尊重,也是對讀者的尊重,更是對知識的尊重... 特別是技術類書籍,來不得半點馬虎... 希望以後能看到重譯的版本。

★★★★★

一本關注如何降低發佈風險和加快發佈速度的書籍,我覺得持續集成和持續交付的概念其實比較簡單也比較好理解,但是第一個能提出這個概念並不容易,如果你沒有管理大型系統的經驗,沒有爲發佈風險承擔巨大的上級壓力的話,或者沒有管理多個集羣和分佈式系統的經驗的話,發佈這件事對你來說並不是一個問題,因爲問題還沒有大到難以忍受,所以維持現狀通過傳統的手工發佈似乎還湊活地過日子。其實當時意識要控制發佈風險來降低手工失誤時,你就會考慮去寫一個自動化的部署腳本。當你面對衆多主機,每一部分主機需要發佈不同應用程序時,你就會考慮一鍵部署工具。爲了避免將明顯的錯誤帶入版本控制系統,你就會考慮寫一寫自動化的測試來降低測試人員花在迴歸測試上的時間,讓他們能專注於探索性測試和可用性測試。爲了降低最終上線發佈的影響範圍,你會考慮使用金絲雀發佈的方式,做到進可攻(逐漸過渡)退可守(一鍵回滾),個人感覺藍綠部署和金絲雀發佈類似,只是前者沒有後者平滑,一個是全部引導,一個是小部分引導。除此源碼之外,作者還提到軟件的運行環境(基礎設施)也需要版本控制,做到讓環境的重建成本爲0,可以通過虛擬鏡像的方式,同時還要求對基礎設施環境的變更要記錄在案,要有訪問控制。對於配置信息,作者也提到需要單獨的配置管理服務來對所有應用程序的不同版本在不同環境的配置信息做版本控制,即(應用程序的類型,應用程序的版本號,環境) –> 單獨的配置信息。本書的核心思想 –> 通過自動化的方式來降低手工風險和加快流程,所有的操作都要有版本控制,支持一鍵後悔。(作者常說的,我們要實現構建、測試、部署、發佈的全自動化)

★★★★★

讀了一個月,終於讀完了這本書。對於軟件開發的整個流程,終於有了一定的認識。很佩服作者提出的關於“持續交付”的種種思想與解決方案,於我來說,猶如撥雲見日。很贊成書中的一個觀點:團隊的結構與成員間的交流方式,會反應到項目的結構與質量上。

★★★★★

書中涉及持續交付中配置、環境、構建、測試、部署等各個環節,很全面很詳細。第二部分講了很多關於自動化測試方面。時間緊的話可以着重看第一部分和第三部分。 第三部分中,對數據庫管理、代碼版本,依賴管理需要再閱讀其他書籍。 在現在DevOps、雲原生架構流行的情況下,持續交付的方式可能會有些許的不同,但是對項目管理的各個環節萬變不離其宗,需基於各個原則進行實踐。

★★★★★

DevOps,概言之,使開發運維自動化。 開發者,開發功能;運維者,維持穩定。 持續交付,快速反饋,迭代增量。 “我們還能與家人和朋友共度週末,享受沒有壓力的生活,而工作也會變得更加高效。爲什麼不呢?生命如此短暫,我們不能把自己的假期浪費在計算機旁,做那些枯燥無味的部署工作。”

★★★★★

內容充實,層次感強。從頂層方法論開始逐步細化說明持續交付的概念,配合一些實際案例更容易體會和理解。二刷結束

書籍信息

作者Jez Humble David Farley
譯者喬梁
出版社人民郵電出版社
出版時間2011-10-12
ISBN9787115264596
分類計算機-計算機綜合
格式EPUB
完結狀態連載中
章節數130