極狐GitLab小課堂|如何利用DevOps來償還技術負債?
眾所周知,DevOps世界的主要資源限制之一是技術負債。何為技術負債?在DevOps詞典中,把技術債務歸結為開發團隊在軟體開發過程中做出的次優決策,但沒有回過頭來解決這些問題。隨著企業踏上DevOps之路,改善整體技術債務的迫切需要已經出現。下面就帶領大家深入探討下,極狐GitLab如何利用DevOps來償還技術負債的。
要償還技術負債,首先要弄明白技術負債是如何在工作流程中積累的。
技術負債的一些來源有程式碼不足、過時的架構、低於標準的基礎設施和鬆懈的開發流程。令人頭疼的cruft積累會導致開發過程中出現摩擦,因此很難更新或新增程式碼,直到開發進度停滯不前。此外,以手動部署與使用自動化流水線為例,手動部署需要花費大量的時間,但為實現自動化流水線而需要投入的前期準備工作也令人望而生畏。
所以,對於一個團隊來說,儘早處理技術負債將有助於長期節省資源。如果團隊陷入了耗時的技術負債旋渦中,可以看看總部位於美國明尼蘇達州的諮詢公司 BI Worldwide (BIW) 是如何透過過渡到GitLab來加速部署的。
在案例研究中,BIW企業產品開發團隊解釋了他們在內部基礎架構上進行手動測試和手動部署時所面臨的困境。他們的工具鏈複雜且效率低下,導致了大量backlog產品功能待辦清單。
“應用所有的程式碼更改非常耗時。”BIW 產品架構師 Adam Dehnel 在研究案例中說。當每個版本中都塞進了太多的功能時,部署頻率與速度會變得很慢。“雖然在那時BIW 已經有了實踐和工具,但卻把時間花在了沒有業務差異化特徵的專案上。他們面臨著缺乏跨團隊溝通的典型問題,包括組織內工作流程和個性化工具集的低效機制。”BIW 產品架構師 Adam Dehnel 解釋道。
最開始,BIW 進行了從 CVS 到 Git 的痛苦轉型。下一步,公司的目標是實現構建、測試和部署過程的自動化,並利用GitHub、Jenkins、JIRA 和 Confluence等工具建立了一個完整工具鏈。
對於 BIW 來說,這種複雜的工具鏈是錯誤的。在這個具體的例子中,有一點沒有提到但值得關注的是維護所有這些不同工具的隱性成本。一般來說,擁有的工具越多,就會有更多升級、維護和整合這些工具的額外開銷。在經營成本的背後還有巨大的隱性成本。
在接下來的迭代中,BIW 透過採用GitLab享有了一體化工具的高效率。BIW從每9到12個月釋出一個版本的速度節奏,發展為每天使用 GitLab Ultimate 進行近十次部署,這無疑大大減少了他們由於緩慢而費力的釋出週期而造成的技術負債。
由此可以看來,想要節約寶貴資源,可以用DevOps來償還技術負債。DevOps可以幫助使用者更快、更頻繁地進行部署,使企業在競爭中佔據優勢,它同時也是一種償還技術負債的策略。透過首先考慮到程式碼和工程流程中的低效率,使用者可以粗略評估和分類團隊的技術負債。這種型別的審計是第一步,以確定使用者可以減少的過時垃圾程式程式碼,以幫助縮短週期時間,清理backlog產品功能待辦清單並實現工程流程的現代化。
目前,GitLab現已在中國上線了適應本地需求的中國發行版極狐GitLab,所以,國內使用者可以用極狐GitLab的DevOps來進行操作,操作起來會更加簡潔易懂。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31545225/viewspace-2788109/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 極狐GitLab怎麼樣?如何利用極狐GitLab CI提高生產力?Gitlab
- deno 如何償還 node.js 的十大技術債Node.js
- Deno 如何償還 Node.js 的十大技術債?Node.js
- 極狐GitLab Runner 新增 極狐GitLab 域名 hostGitlab
- 極狐gitlab 搭建Gitlab
- 極狐GitLab 如何配置多個 LDAP?GitlabLDA
- 如何配置極狐GitLab Maven 倉庫GitlabMaven
- 如何在CentOS 安裝極狐GitLab Runner?CentOSGitlab
- 如何配置極狐GitLab Runner Cache 快取Gitlab快取
- 如何配置極狐GitLab Runner 幫助映象Gitlab
- 如何在極狐GitLab 配置 郵件功能Gitlab
- 如何配置極狐GitLab Docker 容器映象倉庫GitlabDocker
- 如何部署極狐GitLab Runner Cache 快取配置?Gitlab快取
- 如何在Anolis 8 安裝 極狐GitLab RunnerGitlab
- 如何在極狐GitLab Runner Job 新增域名 host?Gitlab
- 如何使用極狐GitLab 自定義 Pages 根域名Gitlab
- 什麼是技術債,為什麼要還技術債?
- 極狐GitLab Runner 升級指南!Gitlab
- 如何依賴機器人安裝極狐GitLab機器人Gitlab
- 如何給極狐GitLab Runner 新增 MinIO 域名 hostGitlab
- 如何使用極狐GitLab Runner 修改日誌大小限制Gitlab
- 如何極狐GitLab Runner 使用特權身份執行Gitlab
- 如何從 AWS CodeCommit 遷移到極狐GitLab?MITGitlab
- GitLab 老舊版本升級難?極狐GitLab 專家來幫忙!Gitlab
- 極狐GitLab好用嗎|五種方式降低“開放式DevOps平臺”成本Gitlabdev
- 支援“中國芯”,極狐GitLab助力AI晶片企業DevOps體系建設GitlabAI晶片dev
- 極狐GitLab怎麼樣?幾大解決方案解密來了Gitlab解密
- 極狐GitLab Runner 信任域名證書Gitlab
- 如何啟動極狐GitLab 靜態網站Pages功能Gitlab網站
- ONES 與極狐(GitLab)戰略合作,強強聯手推動 DevOps 發展Gitlabdev
- 如何在極狐GitLab Runner 新增信任快取域名證書Gitlab快取
- 如何在極狐GitLab 自定義 Pages 域名、SSL/TLS 證書GitlabTLS
- 極狐GitLab CI/CD 作業不執行,如何處理?Gitlab
- 我們不可能永遠都在救火 ——Scrum中技術債務“償還”指南Scrum
- 我們來聊聊技術債務
- 如何分析資產負債表
- 深度學習小課堂:如何利用遞迴神經網路生成文字?深度學習遞迴神經網路
- 物聯網小課堂之NB-IoT黑科技——低功耗技術