前幾天就開始看這本書,但一直沒有總結(jié)催植。在實習(xí)的時候肮蛹,項目中也遇到過部署的問題,我沒有做過這方面的工作创南,感覺對其還是知之甚淺伦忠。看完第一章后稿辙,它解決了我的一些問題昆码,同時也給我?guī)砹艘恍┮苫蟆?/p>
基礎(chǔ)概念的理解
下面的部分概念是個人在平時和看書的時候不理解和概念混淆不清的個人理解整理。
- 反模式:用來解決問題的帶有共同性的不良方法邻储。
- 持續(xù)集成:個人研發(fā)的部分向軟件整體的交付赋咽。
- 持續(xù)交付:在持續(xù)集成的基礎(chǔ)上,將集成后的代碼部署到更接近真實運行的環(huán)境(類生產(chǎn)環(huán)境)中吨娜。
- 持續(xù)部署:交付后的代碼通過評審脓匿,自動部署到生產(chǎn)環(huán)境中毛俏。
- 發(fā)布:部署流水線的最后一步柿汛,發(fā)布前要經(jīng)過各種的測試。
從本質(zhì)上來講轮锥,部署流水線指一個應(yīng)用程序從構(gòu)建>部署>測試>發(fā)布的這整個過程的自動化實現(xiàn)
常見的發(fā)布反模式
- 手工部署軟件:容易引起人為錯誤,成本高
- 開發(fā)完成后才向類生產(chǎn)環(huán)境部署:效率低毡琉,出現(xiàn)問題匆忙修復(fù)爱咬,會留下隱患
- 生產(chǎn)環(huán)境的手工配置管理:出錯的概率大,出現(xiàn)問題無法回滾
如何實現(xiàn)快速交付
- 每次的修改都應(yīng)該觸發(fā)反饋流程
- 必須盡快接受反饋
- 交付團隊必須接受反饋并作出反應(yīng)
軟件交付的原則
- 為軟件的發(fā)布創(chuàng)建一個可重復(fù)且可靠的過程
- 將幾乎所有的事情自動化
- 將所有的東西都納入版本控制
- 提前并平頻繁的做讓你感到痛苦的事
- 內(nèi)建質(zhì)量
- “Done”意味著“已發(fā)布”
- 交付的過程是每個成員的責(zé)任
- 持續(xù)改進
總結(jié)&疑惑
- 通過本章我了解為什么我們會選擇持續(xù)交付绊起,和傳統(tǒng)的軟件發(fā)布相比它的優(yōu)勢在哪里。
- 如何進行配置管理燎斩,基礎(chǔ)設(shè)施虱歪,環(huán)境管理?
- 如何實現(xiàn)提交測試栅表,自動化驗收測試笋鄙,和非功能性需求的測試?