色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是DevOps?DevOps的優勢以及生命周期

馬哥Linux運維 ? 來源:OSC開源社區 ? 作者:炒蠶豆吃蹦豆 ? 2021-06-29 17:19 ? 次閱讀

在大多數情況下,軟件應用程序開發由于其規范性和復雜性而變得很耗時。為了在短時間內交付高質量應用程序,軟件開發人員正在遵循一套通用的實踐,稱為DevOps生命周期。那么,DevOps在軟件應用程序開發領域中扮演著什么角色?讓我們深入了解其含義、用途以及DevOps生命周期中的每個關鍵階段。

什么是DevOps

在DevOps之前,從業人員使用瀑布模型或敏捷開發模型進行軟件項目開發:瀑布模型或順序模型是軟件開發生命周期(SDLC)中的一種開創性方法,在這個模型中,軟件開發成為一個線性過程,不同的階段和任務被依次定位;而敏捷開發涉及各種方法的使用和SDLC中多個團隊的協作。

瀑布模型的線性和敏捷開發的跨功能性無法確保快速、連續地交付無缺陷的軟件應用程序。軟件行業日益清晰地認識到:為了按時交付軟件產品和服務,開發和運維工作必須緊密合作。這樣的情況下,DevOps應運而生。

DevOps是一個簡單的縮寫詞,源于“development(開發)”和“Operation(運維)”兩個詞,它涉及以特定的方式實踐應用程序開發的任務。更廣泛地說,軟件開發和IT運維的結合被稱為DevOps。

DevOps的優勢

DevOps在促進IT運維和軟件開發之間的敏捷關系方面的有效性受到幾個因素的支持。通過在軟件開發和IT運維部門的多個業務部門內實現更好的通信,DevOps通過以下優勢的結合改進了軟件的總體生產:穩定的運行環境、超快速的交付、堅實的合作、時間優化(特別是在修復/維護階段)、持續創新。

這樣的技術優勢使得DevOps成為世界上軟件應用程序開發中備受追捧的方法。要了解DevOps如何實現這些優勢,了解DevOps的完整生命周期是很重要的。讓我們分解DevOps中的關鍵階段,并找出實現完美、連續和快速軟件開發的過程。

解密DevOps生命周期

DevOps主要用于電子商務網站、云本地應用程序和其他大型分布式平臺的應用程序開發。它由多個階段組成,這些階段統稱為DevOps生命周期:持續發展、持續集成、持續測試、持續反饋、持續監測、持續部署、持續運維。這七個階段是能確保DevOps優化從提出到生產再到完整交付的整個開發流程的主要組成部分。下面是對DevOps生命周期的階段性、完整的分解和分析。

持續開發

DevOps生命周期的第一個階段是規劃和軟件編碼。其中規劃包括理解項目的遠景,并基于這些遠景設想軟件。做規劃不涉及任何主要工具,而維護代碼需要使用一系列工具。開發應用程序源代碼的第一步是從不同的編程語言中進行選擇。

JavaScript,C / C ++,Ruby和Python在DevOps中主要用于編碼應用程序。維護代碼的過程稱為源代碼管理(SCM),其中使用了諸如Git、TFS、GitLab、Subversion等版本控制工具。在SCM過程中,Git是支持分布式版本控制的首選工具。

它通過循環的非線性工作流對數據保證做出貢獻。對于涉及大量合作者參與開發活動的大型項目,Git通過提交消息在團隊之間建立可靠的通信。借助版本控制工具,可以在連續開發階段構建應用程序代碼的穩定版本。開發人員還可以使用Garden,Maven和類似工具將代碼打包為.exe(可執行)文件。

持續集成

源代碼會被修改多次,這些頻繁的更改每周甚至每天都在發生著。下一階段的代碼集成是整個DevOps生命周期的核心。在持續集成中,將構建支持附加功能的新代碼,并將其集成到現有代碼中。在這個階段,源代碼中的錯誤會在早期就被檢測到。

為了生成為應用程序帶來更多功能的新代碼,開發人員運行用于單元測試、代碼評審、集成測試、編譯和打包的工具。將新代碼持續集成到現有源代碼中有助于反映最終用戶在使用更新后的代碼時所經歷的更改。Jenkins是被廣泛應用的可靠的DevOps工具,用于獲取更新的源代碼并將構建構建為.exe格式。這些轉換是無縫進行的,更新的代碼將打包并進入下一階段,即生產服務器或測試服務器。

持續測試

一些開發人員在持續集成階段之前執行持續測試階段。根據應用程序代碼中的更新,可以圍繞DevOps生命周期中的持續集成階段重新定位此階段。在這個階段,對開發的軟件進行不斷的Bug測試。使用Docker容器來模擬測試環境。通過自動化測試,開發人員可以節省往常在手動測試中浪費的精力和時間。

自動化測試生成的報告可改善測試評估過程,分析失敗的測試用例變得更加容易。經過UAT(用戶接受測試)過程后,生成的測試套件更簡單且沒有Bug。TestNG,Selenium和JUnit是用于自動化測試的一些DevOps工具。這些工具還可以在預設的時間線上安排測試用例的執行。

質量保證工程師(QA)可以使用這些工具對其他幾個代碼庫進行并行測試。它確保了應用程序實現功能完美和網絡互聯。最后,被測試的代碼被重新發送到持續集成階段以更新源代碼。

持續反饋

持續測試和持續集成是確保應用程序代碼持續改進的兩個關鍵階段,而持續反饋是分析這些改進的階段。開發人員可以在最終產品上評估這些修改的結果。最重要的是,測試這些應用程序的客戶可以在此階段分享他們的經驗。在大多數情況下,DevOps生命周期的這一階段為應用程序開發過程提供了一個轉折點。及時評估反饋,開發人員開始著手進行新更改。這樣,客戶反饋很快就能得到積極的回應,這為發布軟件應用程序的新版本鋪平了道路。

持續監測

監測應用程序的性能對于應用程序開發人員至關重要。在此階段,開發人員記錄有關應用程序使用的數據,并持續監測著每個功能?!胺掌鳠o法訪問”或“內存不足”是可以在這個階段被解決的一些常見系統錯誤。持續監測有助于保持應用程序中服務的可用性。

它還能確認重復出現的系統錯誤的威脅和根本原因。在這個階段,安全問題可以得到解決,還能自動檢測和修復缺陷。與軟件開發團隊相比,IT運維團隊在這一階段的參與程度更高。他們的角色在監視用戶活動、檢查系統是否有異常行為以及跟蹤錯誤的存在方面至關重要。

Sensu,ELK Stack,NewRelic,Splunk和Nagios是用于持續監視的關鍵DevOps工具。這些工具可實現對系統、生產服務器和應用程序性能的全面控制。在這些工具的幫助下,運維團隊可以積極參與,以提高應用程序的可靠性和生產率。當在此階段檢測到重大問題時,應用程序將在DevOps生命周期的所有早期階段快速重新運行,這就是為何在這個階段找到解決各種問題的方法會變得更快的原因。

持續部署

通常來說,持續部署階段發生在持續監視之前。但是,開發人員要確保這個階段在DevOps生命周期中始終處于活動狀態,尤其是在應用程序上線并開始接收大量流量之后。在此階段,最終確定的應用程序代碼將被部署到生產服務器。

配置管理是這一階段的關鍵過程,它在所有服務器上執行應用程序代碼的精確部署,建立并管理應用程序性能和功能條件的一致性。將代碼發布到服務器,為所有服務器安排更新,并且這些配置在整個生產過程中保持一致。Ansible、Puppet和Chef是用于配置管理的一些有效的DevOps工具,它們經常執行新代碼的快速和連續部署。

容器化工具用于通過配置管理過程實現連續部署。Vagrant是一種容器化工具,可在從開發和測試到階段和生產的不同環境中發展一致性。同樣,連續部署的可伸縮性由Docker等工具處理。這些工具通過復制和打包來自測試,登臺和開發階段的軟件耦合,消除了各種生產故障和系統錯誤。最終,該應用程序可以在不同的計算機上流暢運行。

持續運維

DevOps生命周期的最后一個階段是最短且最簡單的階段。持續運維的目的是使發布的應用程序和后續更新的過程自動化。持續運維中的開發周期更短,從而使開發人員能夠不斷加快該應用程序的上市時間。

DevOps生命周期可交付成果

DevOps生命周期的每一個階段都由兩個共同因素控制:最大程度的自動化和連續性。多功能工具取代了額外的步驟,大大縮短了檢測故障所需的時間。DevOps運行在一個生命周期中,這個生命周期提供了軟件應用程序的最佳版本。

最終產品使企業能夠恢復迅速開發的速度并同時改善用戶體驗。

高投資回報率(ROI)簡化了成本控制,開發和運維團隊可以有機合作。

與持續部署解決方案相結合,將編程代碼發送到1000多臺生產服務器上是可行的。在DevOps生命周期中,有一些高級模式是為部署而設計的。類似的特性用于交付按需部署和審核。

隨著技術的不斷創新,DevOps繼續以最高的質量和速度發展。如今,它已成為全球數百萬公司數字化轉型之旅的戰略組成部分。

DevOPS生命周期顯然打破了團隊合作的障礙。當可以使用DevOps構建負責任的業務環境時,無需進行任何冗余的工作。

DevOps工具生成的報告提供了業務洞察力并增強了SDLC中的可見性。通過端到端的價值管理,DevOps系統地提高了交付速度。

有了DevOps,項目管理和規劃的任務將最終完成。DevOps既能應用于大型企業,也能服務于中小企業。組織、安排、調整和跟蹤項目都變得更容易。DevOps生命周期的所有階段都保持完整的可跟蹤性。

大多數軟件開發人員都可以從DevOps提供的分支工具中受益。它可以高效地設計應用程序UI和管理UX代碼、安全地開發和存儲項目數據。

由于代碼中的每次更改都會影響生產階段,因此用于自動監視和發布管理的工具分別有助于檢測錯誤和模擬用戶響應。

由于使用了單一的分布式版本控制工具,并且通過提供具有快速迭代自由度的高價值業務產品,工作流不會中斷。

使用DevOps包管理工具可以為軟件應用程序創建可靠的供應鏈。應用程序及其依賴項被捆綁到容器中,容器將進一步管理。開發人員可以通過安全的容器注冊表和存儲庫輕松地構建代碼包。DevOps通過自動化軟件開發管道加速了自由、不間斷的流程。

自動化測試使團隊可以完全接受DevOps生命周期的不同階段,因為這有助于維持高標準的產品質量。編碼,驗證,更改,構建新代碼,甚至將它們集成到源代碼中都非常容易。

除了自動化測試之外,還有代碼質量分析、動態分析安全測試和靜態分析安全測試等過程來收集重要的反饋并將其傳遞給開發人員和測試人員。這增強了開發和操作團隊提高代碼質量的能力。

關鍵基礎設施配置信息(密碼和登錄ID)的訪問受工具保護,這些工具將它們偽裝成秘密變量。為了獲得額外的安全性,DevOps提供了有限的訪問權限—只有經過授權的用戶和進程才能獲得訪問權限。

憑借其獨立的開發環境和更快的開發方法,DevOps成為技術市場的重要貢獻者。它是通過創建動態應用程序來解決技術業務挑戰的最重要的工具集。由于這種方法給開發人員和用戶都能帶來好處,DevOps的采用率持續增加。國內大廠如阿里、騰訊、華為、等都有自己的云端DevOps解決方案。

fea3afb6-d6a1-11eb-9e57-12bb97331649.png

以開源和私有部署為主要特點的禪道項目管理軟件也已經內置了對Git、Subversion、Jenkins的集成,同時還提供了zentao ztf的自動化測試框架,打通了項目管理工具和持續集成工具中間的溝壑,禪道與ZTF的結合貫穿整個DevOps生命周期。

盡管DevOps目前是在全球大多數企業的軟件開發項目的技術背景下進行的,但在未來幾年,它將繼續在現代靜態網頁和動態軟件應用程序的開發中得到多樣化的應用。

參考文獻:Amol Muratkar.What is DevOps Lifecycle and How to Manage Yours [OL]。(2020-03-26)https://dzone.com/articles/what-is-devops-lifecycle-how-to-manage-yours

編輯:jq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編碼
    +關注

    關注

    6

    文章

    940

    瀏覽量

    54814
  • C++
    C++
    +關注

    關注

    22

    文章

    2108

    瀏覽量

    73622
  • SCM
    SCM
    +關注

    關注

    2

    文章

    66

    瀏覽量

    15310
  • devops
    +關注

    關注

    0

    文章

    113

    瀏覽量

    12014

原文標題:DevOps生命周期,你想知道的全都在這里了!

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    汽車軟件DevOps解決方案

    經緯恒潤汽車軟件DevOps解決方案是專為現代汽車行業設計的一套集成化需求、開發、測試、部署、OTA與監控,旨在加速軟件開發流程,提高軟件質量和安全性,同時確保整個生命周期的高效性和靈活性。
    的頭像 發表于 12-16 10:33 ?592次閱讀
    汽車軟件<b class='flag-5'>DevOps</b>解決方案

    devops使用最廣泛的集成工具盤點

    devops使用最廣泛的集成工具包括GitLab(全棧DevOps平臺)、Jenkins(CI/CD自動化服務器)、Docker(容器化技術)、Kubernetes(容器編排平臺)、Ansible
    的頭像 發表于 11-26 13:48 ?154次閱讀

    什么是PLM產品生命周期管理系統?

    在當今競爭激烈的制造業環境中,企業不僅要關注產品的設計和生產,還需要對產品的整個生命周期進行全面管理。這包括了從產品概念構思、設計開發、生產制造、銷售分發,到最終報廢處理的每一個環節。為了高效、系統
    的頭像 發表于 11-23 16:14 ?165次閱讀
    什么是PLM產品<b class='flag-5'>生命周期</b>管理系統?

    半導體全生命周期測試:哪些設備在默默守護你的電子產品?

    半導體產業作為現代電子工業的核心,其產品的全生命周期測試對于確保產品質量、提高生產效率和降低成本具有重要意義。半導體全生命周期測試設備涵蓋了從原材料檢測到最終產品測試的一系列設備,本文將對這些設備進行詳細介紹。
    的頭像 發表于 07-01 09:38 ?335次閱讀
    半導體全<b class='flag-5'>生命周期</b>測試:哪些設備在默默守護你的電子產品?

    鴻蒙開發組件:DataAbility的生命周期

    應用開發者可以根據業務場景實現data.js/data.ets中的生命周期相關接口。DataAbility生命周期接口說明見下表。
    的頭像 發表于 06-20 09:39 ?434次閱讀

    鴻蒙開發:【PageAbility的生命周期

    PageAbility生命周期是PageAbility被調度到INACTIVE、ACTIVE、BACKGROUND等各個狀態的統稱。PageAbility生命周期流轉及狀態說明見如下圖1、表1所示。
    的頭像 發表于 06-17 10:05 ?691次閱讀
    鴻蒙開發:【PageAbility的<b class='flag-5'>生命周期</b>】

    設備全生命周期管理流程有哪些?

    采購與安裝階段設備全生命周期管理系統對設備需求進行分析,記錄設備信息,確保設備正確安裝并達到預期性能。維護保養階段制定科學維護計劃,定期檢查和保養。性能優化與升級階段通過分析數據發現問題,優化設備性能。
    的頭像 發表于 06-13 15:21 ?735次閱讀
    設備全<b class='flag-5'>生命周期</b>管理流程有哪些?

    鴻蒙Ability Kit(程序框架服務)【UIAbility組件生命周期】實例

    本文檔主要描述了應用運行過程中UIAbility和自定義組件的生命周期。對于UIAbility,描述了Create、Foreground、Background、Destroy四種生命周期。對于頁面
    的頭像 發表于 05-31 15:03 ?1113次閱讀
    鴻蒙Ability Kit(程序框架服務)【UIAbility組件<b class='flag-5'>生命周期</b>】實例

    如何保護電子元器件以延長生命周期

    在電子電力領域,許多關鍵應用要求設備必須運行很長一段時間,甚至幾十年。尤其是對于航空航天、國防、能源和醫療行業方面而言,為了保持設備正常運行,必須在其整個生命周期內持續供應組件。那么,如何保護電子
    的頭像 發表于 05-31 13:59 ?512次閱讀
    如何保護電子元器件以延長<b class='flag-5'>生命周期</b>

    Traveo II B-H中的SECURE和SECURE_WITH_DEBUG生命周期階段有何不同?

    Traveo II B-H 中的 SECURE 和 SECURE_WITH_DEBUG 生命周期階段有何不同?
    發表于 05-21 07:07

    HarmonyOS開發案例:【UIAbility和自定義組件生命周期

    本文檔主要描述了應用運行過程中UIAbility和自定義組件的生命周期。對于UIAbility,描述了Create、Foreground、Background、Destroy四種生命周期。對于頁面
    的頭像 發表于 05-10 15:31 ?1241次閱讀
    HarmonyOS開發案例:【UIAbility和自定義組件<b class='flag-5'>生命周期</b>】

    IBM推出全新IT生命周期管理模式

    IBM近日正式推出了IBM Storage Assurance,這是一項創新的IT生命周期管理方案。其設計初衷在于為客戶提供數據中心管理的靈活性與控制權,以最大化系統性能。該方案融合了IBM FlashSystem的硬件和軟件創新優勢,確??蛻粼谙硎芨咝阅艽鎯Φ耐瑫r,其投
    的頭像 發表于 05-09 11:47 ?584次閱讀

    什么是設備全生命周期管理系統?

    設備全生命周期管理系統是一款能夠對設備進行全周期數字化管理的軟件平臺,它通過將設備信息電子化,使得設備的管理和監督更加便捷。這個系統不僅涵蓋了設備的采購、使用、維修、報廢等各個階段,還能夠對設備
    的頭像 發表于 02-26 14:21 ?1175次閱讀
    什么是設備全<b class='flag-5'>生命周期</b>管理系統?

    深度解析DevOps架構的概念、關鍵組成部分及其優勢

    DevOps(Development和Operations的合并)是一種旨在加速軟件開發和部署的方法論。
    的頭像 發表于 01-15 09:38 ?2353次閱讀
    深度解析<b class='flag-5'>DevOps</b>架構的概念、關鍵組成部分及其<b class='flag-5'>優勢</b>

    什么是DevOps中的持續測試?持續測試如何融入DevOps?

    持續測試(CT) 是在整個軟件開發生命周期(SDLC) 中自動測試軟件應用程序和組件的實踐。在 DevOps 中,持續測試是在整個DevOps 管道中集成測試活動的實踐。
    的頭像 發表于 01-09 09:10 ?560次閱讀
    什么是<b class='flag-5'>DevOps</b>中的持續測試?持續測試如何融入<b class='flag-5'>DevOps</b>?
    主站蜘蛛池模板: 亚洲日韩一区精品射精| 一本到道免费线观看| 亚洲综合无码一区二区| 99久久精品互换人妻AV| 国产精品一区二区20P| 久久秋霞理论电影| 日韩欧美国产免费看清风阁| 亚洲区视频| 成人毛片免费播放| 久久国产免费观看精品1| 日本湿姝在线观看| 夜夜骑夜夜欢| 芳草地社区在线视频| 久久久国产精品免费A片蜜臀| 强奸美女老师| 亚洲中文字幕国产综合| 丰满老熟好大bbbxxx| 久久在精品线影院| 香蕉AV福利精品导航| 99久久国产极品蜜臀AV酒店| 国产三级在线观看免费| 欧美肥胖女人bbwbbw视频| 亚洲精品色情婷婷在线播放| qvod电影在线观看| 久久精品亚洲精品国产欧美| 熟女强奷系列中文字幕| 97草碰在线视频免费| 狠狠人妻久久久久久综合九色| 人妻体内射精一区二区| 中文字幕精品视频在线| 国产亚洲视频在线观看| 日本免费无码A专区在线观看| 中国老太性色xxxxxhd| 国产午夜理论片YY8840Y| 清冷受被CAO的合不拢| 18禁国产精品久久久久久麻豆| 国产欧美日韩中文视频在线| 人妻 中文无码 中出| 中文视频在线观看| 饥渴的护士自慰被发现| 忘忧草在线影院WWW日本二|