成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

汽車之家質效流水線——奔向未來軟件交付的關鍵里程碑

開發 架構
近年來 CI/CD、DevOps 理念的出現,打破了信息孤島和溝通壁壘,加深了多崗位人員之間的協作,也加速了軟件交付的速度和質量。

1. 流水線的定義

流水線,即產品發布流程的名詞化。根據業務定義的順序關系,流水線的執行可以定義為依次執行相應的加工或質量校驗行為。目前,軟件交付全生命周期隨著業務的發展不斷完善。敏捷概念的提出和應用,大幅提升了軟件開發的效率和版本更新的速度,但是它的效果僅限于研發環節,產品發布流程陸續出現新的瓶頸。

近年來 CI/CD、DevOps 理念的出現,打破了信息孤島和溝通壁壘,加深了多崗位人員之間的協作,也加速了軟件交付的速度和質量。之家在 DevOps 上也分為多階段,從原始的傳統上線流程到如今的質效流水線階段,逐漸團結了研發、運維和 QA 人員,更加注重流水線過程中各環節的質量檢測和效率提升。未來,我們進一步將 LLM 納入規劃,開啟智能流水線時代。

之家流水線發展歷程與規劃之家流水線發展歷程與規劃

2.發展歷程

1.1傳統上線流程

傳統的發布流程較為原始和簡陋,產品代碼由研發人員確認完畢后,線下與測試人員溝通協調,經測試人員驗證通過后即發布上線,而后由產品負責人線下聯系運維對產品進行監測和維護。此階段的任務執行與轉交基本為線下進行,沒有統一的平臺進行管理與約束,工作開展不便,各崗位人員協作也受限,導致工作效率低、產品交付慢。且由于研發側與運維側的衡量指標和工作重點不同,一方追求“新功能”、一方追求“穩定”,以至于兩者常有爭論。隨著 DevOps(Development+Operations)理念的出現,之家團結研發和運維人員,產品流程發展進入基礎流水線時代。

2.2 基礎流水線

DevOps 是一種思想或方法論,是一組過程、方法與系統的統稱,用于促進研發、運維和質量保障部門之間的溝通、協作與整合,強調使用自動化的方法管理軟件變更和軟件集成。DevOps 的基礎核心是 CI/CD,為了優先處理研發和運維人員之間的矛盾,之家借鑒 CI/CD 思想對產品流程進行改造。

CI(Continuous Integration)即持續集成,是自動檢測和拉取代碼并進行編譯構建,生成多版本穩定可靠的制品供研發人員快速使用,從而保障后續軟件交付的制品質量與產出效率。平臺支持多類研發語言,統一管理代碼及外部依賴,提供多種靈活可靠的制品生成方式,保障制品安全和質量,這屬于研發人員的自動化流程。

CD(Continuous Deployment)即持續部署,指平臺自動將研發人員的更改從存儲庫發布到生產環境,提供多樣化的部署方式和規范化的部署流程保障軟件交付質量和效率。主要為了解決因手動流程降低應用交付速度,從而使運維團隊超負荷的問題。

基礎流水線已經逐步將研發、運維工作結合在一起,有效加深了團隊之間的溝通和協作。運維人員會在項目研發期間就介入到開發過程中,了解研發人員使用的系統架構和技術路線,從而制定適當的運維方案。而研發人員也會在運維的初期參與到系統部署中,并提供系統部署的優化建議。并且,開始使用自動化平臺輔助開展工作,實現服務自動化部署上線功能,支持更快速可靠地發布產品。隨著平臺的發展,服務質量被越來越重視,在高效的同時,保障質量成為重要一環,之家進一步把 QA 人員團結進來,進入當前的質效流水線時代。

 3.3 質效流水線

CT(Continuous Test)即持續測試,緊密結合持續集成(CI)的流程,通過自動化測試快速、準確地執行測試用例,及時發現代碼質量問題,提升測試效率和軟件質量,使得 QA 人員能夠將精力集中于優化自動化測試用例和場景。

在此基礎上,流水線不再明顯區分測試流水線與研發流水線,而是將各種類型的測試融入主線流水線的各個環節。這樣一來,研發人員無需等待 QA 的反饋,可以及時從自動化測試中獲取問題信息并進行調整。為了迅速豐富和完善自動化測試類別,平臺利用公司內部眾多測試平臺的資源,整合了其測試功能。迄今為止,已接入的測試類別包括單元測試、靜態代碼掃描、接口測試、PC/M前端撥測、APP H5性能測試、壓力測試以及覆蓋率測試等。

基于這些豐富的測試類別,平臺將各項測試嵌入流水線的不同環節,自動地并實時地檢測每個環節的質量情況。例如,在代碼提交階段進行單元測試和代碼掃描,在測試部署階段進行接口測試、性能測試和覆蓋率測試等。通過即時反饋測試結果,并根據質量檢查標準設定門禁,我們可以有效地控制流水線的進程,嚴格把控服務質量。

圖片圖片

我們進一步在 CI/CD 的背景下對基礎流水線進行了改造。在 CI 階段,平臺支持多類研發語言,統一管理代碼及外部依賴,提供多種靈活可靠的制品生成方式,保障制品安全和質量。代碼與版本控制作為質效流水線的第一步,需求進入開發階段,應用代碼版本統一使用 Git 系統進行管理,平臺通過應用實現語言等屬性來劃分后續上線申請的檢測機制。為了提高開發及后續 CI 階段編譯效率(使用代理及本地存儲方式)和安全性(管控外部訪問地址),平臺統一使用 nexus 私服進行管理程序依賴的第三方包、業務基礎包,支持 java、nodejs、go、.net 等各種語言。主要的編輯構建任務基于jenkins集群實現,支持虛機、容器兩種構建環境,兩者互為補充,彼此獨立工作;支持通用性、個性化兩種任務類別,適配特殊依賴環境構建;支持鏡像、壓縮包兩種制品產出物,應對容器、虛機部署方式。編譯構建中鏡像制品比例達到89.7%,平臺對其支持力度也是最大的,提供平臺、業務、私有三類基礎鏡像,支持 dockerfile 的自定義編排及預覽,實現快速、靈活的鏡像配置,提高用戶的接入效率。編輯構建制品產物,鏡像推送至Harbor鏡像倉庫,壓縮包推送至 OSS ,利用底層的多副本特性保障制品的安全。

圖片圖片

在 CD 階段,為了統一各類環境配置并提高操作效率,平臺采用模板化配置和默認值等手段減少用戶配置操作。此外,還提供了環境復制功能以快速生成相同環境,并實現了一鍵式接入鷹眼日志和云日志,避免用戶在不同平臺間來回切換。

目前平臺已擁有19000+個有效環境。通過執行多種合規性門禁檢測以及重要應用部署流程審批,嚴格把控應用上線質量。今年以來,已完成26000+次上線審批。平臺支持主機和容器兩類資源類型,并分別提供了多種部署方式以降低上線風險。

主機部署依賴于 OpenStack 和 salt 等技術,支持10種部署方式,如 Tomcat 多實例/多應用、可執行文件、springboot、.net website、win service 和 yum 等。容器部署,其底層基于 kubernetes 和 container 等云原生技術。平臺支持全量、灰度和藍綠三種部署方式,同時支持特殊容器環境服務網格(Service Mesh)應用部署。

圖片圖片

CD 環節,作為部署環節的延伸,針對前端服務,平臺提供 CDN 刷新環節,推動新版本的更新速度。平臺應用部署時默認接入主機、容器等基礎監控,支持一鍵式接入云平臺日志、鷹眼日志,提高服務保障接入效率;應用管理提供服務監控、日志快捷連接,方便用戶了解服務狀態細節;提供系統應用統一看板,以全局角度展示服務業務、技術指標,支持監控上升事件,提高用戶定位問題效率。(各個監控平臺作用)    

圖片圖片

在質效流水線階段,平臺提供接口服務流水線、前端服務流水線、機器學習流水線、自定義等多種類型標準流水線編排模板,提高用戶編排質量和效率;針對前端相同業務類應用流水線的相似性,以預設模板的形式實現了應用的一鍵化創建,系統自動生成部署環境、流水線等整個過程,效率較手動創建提高 3 倍以上。

質效流水線整體過程展示質效流水線整體過程展示

3.未來規劃

隨著平臺的不斷完善,我們計劃進一步對質效流水線進行改造,考慮結合 LLM(Large Language Model)大語言模型,升級進入智能流水線時代。我們考慮從以下方面拓展:

智能編排:目前流水線整體流程編排由人工完成,鏈路固化,缺乏靈活性,后期考慮引入人工智能,根據流水線任務實際運行狀態及整體資源使用情況,動態調整編排,充分利用資源,提高整體效率。

智能測試:借助大模型賦能單元測試、接口測試用例、UI自動化測試用例自動生成,通過智能裝配流水線質量測試任務,提升測試覆蓋率與效率。

智能部署:根據業務情況和應用服務常用部署方式進行有效推薦,部署失敗時智能化修復,保障軟件發布穩定高效運行。

4. 總結

平臺流水線從傳統發布到現在經歷兩個大的階段,基礎流水線實現持續集成、持續部署,將研發、運營工作有效地結合在一起;考慮到服務質量的重要性,質效流水線進一步團結 QA 人員,將自動測試融入各個環節;未來平臺應用會不斷增長,各種細節處理會不斷增多,這會給研發、運維、QA 人員帶來很大壓力,幸運的是我們處于AI高速發展的時代,大語言模型可以輔助我們快速實現功能開發、服務測試、編排部署等各種任務,這是一件美妙的事情,也是我們共同期待的智能時代。

作者簡介

錢磊錢磊

■ 云平臺部-平臺運營組

■ 2021年加入汽車之家,目前主要負責之家云A-One平臺相關研發工作,旨在提供穩定、高效、保質的自動化流水線服務。

陸艷陸艷

■ 云平臺部-平臺運營組

■ 2016年加入汽車之家,目前主要負責之家云平臺CI/CD、日志、監控、測試工具等相關產品工作。

責任編輯:武曉燕 來源: 之家技術
相關推薦

2015-08-24 17:53:46

應用交付硬件交換分流

2016-09-29 09:46:41

JavascriptWeb前端

2011-09-10 19:23:22

2018-10-23 16:35:19

華為云

2011-09-09 13:42:16

2017-03-02 14:12:13

流水線代碼Clojure

2012-11-06 09:20:21

軟件認證管理云軟件認證管理云環境

2017-08-01 10:15:56

數據分析大數據

2013-01-18 10:09:10

互聯網網絡發展撥號上網

2021-02-04 14:31:30

RISC-V架構GPU

2017-02-28 15:40:30

Docker流水線Azure

2013-06-06 09:31:52

2009-07-20 09:11:50

2015-12-21 16:12:06

紅帽CloudForms混合云

2010-04-09 15:24:55

2009-08-24 09:04:33

2011-05-25 10:19:17

2024-12-04 10:39:00

Linux內核技術性

2015-07-28 11:29:59

電商亞馬遜沃爾瑪

2021-06-26 14:22:34

Tekton流水線Kubernetes
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美综合久久久 | 欧美成人猛片aaaaaaa | 国产精品1区 | 大陆一级毛片免费视频观看 | 亚洲国产看片 | 欧美福利 | 欧美日韩国产传媒 | 人人爽人人爽人人片av | 天天综合永久 | 成人欧美一区二区三区黑人孕妇 | 免费av直接看 | 久草www | 四虎在线观看 | 亚洲一区二区在线 | 国产在线麻豆精品入口 | 国产精品久久久久久久久免费相片 | 日一区二区 | 免费久久99精品国产婷婷六月 | 日韩在线不卡视频 | 国产精品日韩欧美一区二区三区 | 91视频免费观看 | 国产欧美日韩一区二区三区在线 | 91久久国产综合久久 | 一级片在线观看 | 天天插天天搞 | 国产精品久久久久久一区二区三区 | 中文字幕一区二区三区在线观看 | 久久久看 | 一区二区av | 欧美日韩精品久久久免费观看 | 欧美午夜一区 | 亚欧洲精品在线视频免费观看 | 国产精品欧美一区二区 | 国产一级片 | 久久黄视频 | 影音先锋男 | 日韩精品免费视频 | 成人av看片 | 91国内精品 | 81精品国产乱码久久久久久 | 中文字幕日韩欧美 |