精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

云音樂(lè)服務(wù)端大規(guī)模自動(dòng)化升級(jí)實(shí)踐

開(kāi)發(fā) 架構(gòu)
Sidecar 模式是一種常見(jiàn)的微服務(wù)架構(gòu)模式,它通過(guò)在主應(yīng)用程序旁邊部署一個(gè)輔助應(yīng)用程序(稱為 Sidecar),來(lái)擴(kuò)展主應(yīng)用程序的功能。Sidecar 模式允許您在應(yīng)用程序旁邊添加更多功能,而無(wú)需額外第三方組件配置或修改應(yīng)用程序代碼。

一、背景

1. 痛點(diǎn)

在服務(wù)端推進(jìn)升級(jí)是一件比較困難的事情,面臨的困難點(diǎn)包含但不限于:

  • 穩(wěn)定性風(fēng)險(xiǎn):組件自身兼容性的問(wèn)題或不正確升級(jí)帶來(lái)的兼容性問(wèn)題,可能帶來(lái)線上穩(wěn)定性風(fēng)險(xiǎn)。
  • 升級(jí)投入&成本:組件升級(jí)至少需要研發(fā)執(zhí)行升級(jí)、QA執(zhí)行測(cè)試,測(cè)試通過(guò)后再逐步灰度發(fā)布,直至全量發(fā)布。整個(gè)過(guò)程需要研發(fā)、QA投入一定的研發(fā)、測(cè)試、觀察的人力,單次升級(jí)時(shí)間至少以周為單位來(lái)計(jì)量。
  • 升級(jí)推進(jìn)成本:因以上投入成本&穩(wěn)定性風(fēng)險(xiǎn)等其他因素影響,業(yè)務(wù)研發(fā)團(tuán)隊(duì)對(duì)組件的升級(jí)意愿較低。此外,升級(jí)進(jìn)度還受團(tuán)隊(duì)排期、研發(fā)排查&解決問(wèn)題的能力、多團(tuán)隊(duì)的協(xié)調(diào)參與、多角色的協(xié)調(diào)參與等因素影響。在大規(guī)模推進(jìn)升級(jí)時(shí),需要投入大量的項(xiàng)目管理、協(xié)調(diào)成本。

2. 現(xiàn)狀

  • 云音樂(lè)應(yīng)用規(guī)模大,且線性增長(zhǎng):隨著微服務(wù)的發(fā)展,服務(wù)拆分細(xì)化,疊加云音樂(lè)各業(yè)務(wù)快速發(fā)展,云音樂(lè)僅服務(wù)端應(yīng)用總數(shù)早已突破千級(jí),當(dāng)協(xié)調(diào)多個(gè)團(tuán)隊(duì)、千級(jí)別的應(yīng)用升級(jí)時(shí),整個(gè)升級(jí)事項(xiàng)的投入是巨大的。
  • Jar包風(fēng)險(xiǎn)治理率低:在目前架構(gòu)風(fēng)險(xiǎn)巡檢中,Jar包相關(guān)的風(fēng)險(xiǎn)因投入產(chǎn)出比低,其治理率在全部的風(fēng)險(xiǎn)治理中幾乎墊底。Jar包的穩(wěn)定性風(fēng)險(xiǎn)隱患隨著業(yè)務(wù)的發(fā)展而逐步增大。
  • 新技術(shù)落地周期長(zhǎng),多版本維護(hù)成本高:當(dāng)應(yīng)用規(guī)模相對(duì)較小時(shí),我們可以針對(duì)少量應(yīng)用,執(zhí)行技術(shù)升級(jí),但是當(dāng)應(yīng)用規(guī)模較大時(shí),整體推進(jìn)升級(jí)的難度較大,新技術(shù)落地的周期較長(zhǎng),在此過(guò)程中,多版本的維護(hù)成本高,帶來(lái)額外的人力消耗。

3. 作用

在貴州機(jī)房遷移的背景下,云音樂(lè)面臨著大批應(yīng)用升級(jí)的問(wèn)題,此前一次升級(jí)中,全部團(tuán)隊(duì)基本升級(jí)完,總體用了約1個(gè)多月的時(shí)間。對(duì)此,我們研發(fā)了自動(dòng)升級(jí)平臺(tái),其核心解決升級(jí)自動(dòng)化的問(wèn)題。

  • 在穩(wěn)定性上

通過(guò)大范圍的自動(dòng)化部署/測(cè)試真實(shí)應(yīng)用,提高組件的測(cè)試樣本覆蓋,提前發(fā)現(xiàn)并解決組件可能出現(xiàn)的兼容性、穩(wěn)定性等問(wèn)題。

自動(dòng)解決多組件升級(jí)的問(wèn)題,避免因不正確升級(jí)帶來(lái)兼容性、穩(wěn)定性問(wèn)題。

  • 在升級(jí)投入&成本上

對(duì)于需變更代碼的升級(jí),通過(guò)自動(dòng)升級(jí)工具,串聯(lián)自動(dòng)代碼修改、自動(dòng)測(cè)試環(huán)境部署、自動(dòng)CI驗(yàn)證,自動(dòng)幫助研發(fā)完成大部分的代碼修改以及驗(yàn)證工作。大部分情況下,無(wú)需測(cè)試介入,研發(fā)僅需合并代碼,執(zhí)行線上發(fā)布發(fā)布流程即可。

在升級(jí)推進(jìn)成本上

通過(guò)自動(dòng)升級(jí)平臺(tái),支持對(duì)任務(wù)的分發(fā)、中斷、配置、信息收集等等,升級(jí)過(guò)程、進(jìn)度管控完全可視化,大部分升級(jí)工作可以閉環(huán)在中心化執(zhí)行,降低了多團(tuán)隊(duì)、多角色的協(xié)作成本。

4. 使用場(chǎng)景

  • 場(chǎng)景1:技術(shù)架構(gòu)升級(jí)

通過(guò)自動(dòng)升級(jí)平臺(tái),可以自動(dòng)化完成大范圍應(yīng)用的技術(shù)架構(gòu)升級(jí)。例如:JDK升級(jí)、貴州機(jī)房遷移升級(jí)等場(chǎng)景。

  • 場(chǎng)景2:組件風(fēng)險(xiǎn)治理

當(dāng)組件存在風(fēng)險(xiǎn)時(shí),可以借助自動(dòng)升級(jí)平臺(tái),推進(jìn)完成風(fēng)險(xiǎn)治理。

  • 場(chǎng)景3:組件/Agent 兼容性測(cè)試

新發(fā)布組件/Agent時(shí),目前主要在指定的測(cè)試工程里進(jìn)行兼容性測(cè)試,覆蓋場(chǎng)景可能存在不足,可以借助自動(dòng)升級(jí)平臺(tái)完成大范圍的兼容性、穩(wěn)定性等測(cè)試。

二、技術(shù)實(shí)踐

1. 升級(jí)分類

升級(jí)分類因整體架構(gòu)的不同,升級(jí)可分為如下幾類:

圖片圖片

  • 組件升級(jí)

即傳統(tǒng)的Jar包升級(jí),此種升級(jí)一般需要改動(dòng)業(yè)務(wù)代碼才能完成,也是目前整體占比最大的一類。

  • Sidecar模式升級(jí)
  • 邊車模式,組件與業(yè)務(wù)應(yīng)用解耦,組件側(cè)的升級(jí)變更無(wú)需業(yè)務(wù)代碼變更或僅需少量變更。例如:JavaAgent、ServiceMesh等方式。

什么是Sidecar模式

Sidecar 模式是一種常見(jiàn)的微服務(wù)架構(gòu)模式,它通過(guò)在主應(yīng)用程序旁邊部署一個(gè)輔助應(yīng)用程序(稱為 Sidecar),來(lái)擴(kuò)展主應(yīng)用程序的功能。Sidecar 模式允許您在應(yīng)用程序旁邊添加更多功能,而無(wú)需額外第三方組件配置或修改應(yīng)用程序代碼。

此文中,我們?nèi)「鼮閺V義的Sidecar定義,將JavaAgent等作為一個(gè)輔助應(yīng)用程序看待,也被視為Sidecar模式的一種實(shí)現(xiàn)方式。

Sidecar 模式優(yōu)勢(shì)&特點(diǎn)

  • 可擴(kuò)展性:通過(guò)添加 Sidecar 應(yīng)用程序,可以輕松地?cái)U(kuò)展主應(yīng)用程序的功能。
  • 靈活性:Sidecar 應(yīng)用程序可以獨(dú)立于主應(yīng)用程序進(jìn)行部署、升級(jí)和維護(hù)。
  • 可重用性:Sidecar 應(yīng)用程序可以在多個(gè)主應(yīng)用程序之間共享,從而提高代碼重用率。

兩者的差異點(diǎn)和共同點(diǎn)圖片

  • 組件升級(jí)相較于Sidecar式升級(jí),整體升級(jí)流程上會(huì)存在些許差異,但也存在較多重合流程節(jié)點(diǎn)。
  • 組件升級(jí)和Sidecar式升級(jí),均需要考慮整個(gè)升級(jí)流程中的穩(wěn)定性、兼容性、可維護(hù)性、升級(jí)規(guī)范性等問(wèn)題。

2. 能力全景圖

考慮到目前云音樂(lè)微服務(wù)架構(gòu)未全面推進(jìn)sidecar化,在貴州遷移中,主要涉及組件自動(dòng)升級(jí),此文主要對(duì)組件自動(dòng)升級(jí)進(jìn)行詳細(xì)闡述,而Sidecar升級(jí)能力在未來(lái)規(guī)劃中。

這部分主要介紹一下組件自動(dòng)升級(jí)的能力全景,其包括底層通用能力、組件升級(jí)能力、升級(jí)任務(wù)等模塊的核心能力,整體如下圖所示:

能力全景圖.png能力全景圖.png

  • 底層通用能力部分,我們主要基于Git、發(fā)布平臺(tái)、部署平臺(tái)、自動(dòng)化測(cè)試平臺(tái)、代碼分析&檢索平臺(tái)、線上監(jiān)控,構(gòu)建了底層的代碼變更、測(cè)試部署、測(cè)試驗(yàn)證、線上發(fā)布、結(jié)果檢測(cè)的能力。
  • 組件升級(jí)能力部分,支持各類類型文件的變更。
  • 在升級(jí)任務(wù)部分,我們基于自定義任務(wù)流編排和升級(jí)規(guī)則配置,支持自定義升級(jí)任務(wù)編排和多版本升級(jí)插件,以及多種維度的任務(wù)統(tǒng)計(jì)。
  • 在使用場(chǎng)景上,自動(dòng)升級(jí)平臺(tái)可用于:JDK升級(jí)、技術(shù)架構(gòu)升級(jí)、組件風(fēng)險(xiǎn)治理、組件/Agent 兼容性測(cè)試等場(chǎng)景。

3. 底層通用能力&流程編排

目前主要有以下5大底層通用能力:

圖片圖片

底層通用能力

  • 升級(jí)變更。基于Git,實(shí)現(xiàn)分支創(chuàng)建/刪除、代碼提交/拉取、提交/關(guān)閉MergerRequest等能力。
  • 測(cè)試部署。基于發(fā)布平臺(tái)、部署平臺(tái)、測(cè)試環(huán)境,實(shí)現(xiàn)測(cè)試環(huán)境創(chuàng)建、測(cè)試環(huán)境部署、資源釋放釋放/限流等能力。
  • 測(cè)試驗(yàn)證。基于自動(dòng)化測(cè)試平臺(tái)、Sonar、部署平臺(tái),實(shí)現(xiàn)代碼CI檢測(cè)、自動(dòng)化測(cè)試用例、部署驗(yàn)證等能力。
  • 線上發(fā)布。基于發(fā)布平臺(tái),實(shí)現(xiàn)灰度發(fā)布、發(fā)布流程標(biāo)準(zhǔn)化、Agent發(fā)布等能力。
  • 結(jié)果檢測(cè)。基于代碼分析、線上監(jiān)控,實(shí)現(xiàn)代碼升級(jí)檢測(cè)、線上升級(jí)檢測(cè)、Agent升級(jí)檢測(cè)等能力。

以上通用能力在整合時(shí),自動(dòng)升級(jí)平臺(tái)重點(diǎn)做了如下方面的設(shè)計(jì)

  • 流程編排。為了適用不同場(chǎng)景的升級(jí),自動(dòng)升級(jí)對(duì)以上通用能力進(jìn)行流程節(jié)點(diǎn)的細(xì)化,并支持編排。
  • 資源釋放&限流。在大規(guī)模升級(jí)時(shí),需要占用大量的資源進(jìn)行升級(jí)、部署、驗(yàn)證工作,為了避免對(duì)線上環(huán)境造成影響,自動(dòng)升級(jí)平臺(tái)對(duì)任務(wù)進(jìn)行了限流,并在測(cè)試驗(yàn)證通過(guò)時(shí)釋放部分資源、整個(gè)任務(wù)完成時(shí),釋放全部資源。
  • 冪等&衰減重試機(jī)制。若需對(duì)底層平臺(tái)進(jìn)行讀寫(xiě)輪詢操作,需要注意操作的冪等,并且衰減重試,避免產(chǎn)生臟數(shù)據(jù)或?qū)Φ讓悠脚_(tái)的請(qǐng)求壓力過(guò)大。
  • 可觀測(cè)性設(shè)計(jì)。正常情況下的關(guān)鍵信息和異常情況下的異常信息,均需要詳細(xì)記錄,并可視化觀測(cè),減少升級(jí)時(shí)的問(wèn)題排查成本。

4. 組件升級(jí)能力

4.1 必要性

以云音樂(lè)當(dāng)前的現(xiàn)狀來(lái)看,整體距離Sidecar升級(jí)(例:ServiceMesh、Agent、MultiClassloader)仍然相差較遠(yuǎn),同時(shí)后續(xù)升級(jí)推進(jìn)JDK21、ServiceMesh也需要自動(dòng)升級(jí)平臺(tái)的協(xié)助。

即使有了Sidecar,大范圍業(yè)務(wù)代碼的修改也可能是無(wú)法避免,變更代碼式的自動(dòng)升級(jí)和不變更代碼的升級(jí)均需要,自動(dòng)化變更代碼的方式仍然是必須的基礎(chǔ)建設(shè)。

4.2 核心特性

  • 中心化操作:圈選應(yīng)用后,根據(jù)升級(jí)任務(wù)配置,自動(dòng)創(chuàng)建Git分支、自動(dòng)創(chuàng)建測(cè)試環(huán)境并部署、驗(yàn)證。驗(yàn)證通過(guò)后,提交MergerRequest
  • 團(tuán)隊(duì)研發(fā)操作:合并MergerRequest,在devops發(fā)布平臺(tái)走發(fā)布流程
  • 中心化操作:驗(yàn)證各個(gè)應(yīng)用的Master分支升級(jí)情況、線上部署情況

4.3 能力介紹

組件自動(dòng)升級(jí)插件基于OpenRewrite做了二次開(kāi)發(fā)。這里簡(jiǎn)要介紹一下OpenRewrite:

  • OpenRewrite支持大規(guī)模分布式源代碼重構(gòu),以進(jìn)行框架遷移、漏洞補(bǔ)丁和API遷移。
  • OpenRewrite基于 Lossless Semantic Trees (LST),來(lái)實(shí)現(xiàn)代碼的變更。

LST.pngLST.png

  • 目前除支持對(duì)普通Java項(xiàng)目中的java、props、properties、xml、pom.xml,也支持Spring、Micronaut、Quarkus、Jakarta、JDK17、JDK21的升級(jí)。
  • 支持對(duì)變更的明細(xì)的觀測(cè)&記錄。

4.4 升級(jí)流程

圖片圖片

組件升級(jí)默認(rèn)流程.png

以下為升級(jí)流程介紹,在此過(guò)程中加入了升級(jí)穩(wěn)定性、兼容性保障的設(shè)計(jì)

  • 創(chuàng)建代碼分支。

拉取新代碼分支:不污染Master分支,不影響研發(fā)流程。

  • 版本升級(jí)。
  • 分支升級(jí)。在新的代碼分支,調(diào)用升級(jí)插件,實(shí)現(xiàn)升級(jí)

  • 分支驗(yàn)證。再次驗(yàn)證分支升級(jí)的結(jié)果,避免升級(jí)錯(cuò)誤。

  • 測(cè)試部署節(jié)點(diǎn)。

  • 會(huì)對(duì)各團(tuán)隊(duì)創(chuàng)建升級(jí)任務(wù)單,同時(shí)提前打通上線流程。

  • 創(chuàng)建新的測(cè)試環(huán)境,并檢查是否部署成功。確保不影響研發(fā)流程的同時(shí),驗(yàn)證升級(jí)結(jié)果。

  • 測(cè)試驗(yàn)證節(jié)點(diǎn)。

  • 觸發(fā)自動(dòng)化測(cè)試用例并驗(yàn)證。驗(yàn)證業(yè)務(wù)邏輯是否正常。維護(hù)自動(dòng)化測(cè)試用例是QA側(cè)的日常工作,若不存在自動(dòng)化測(cè)試用例,流程會(huì)卡住,可通知QA側(cè)進(jìn)行維護(hù),或自行測(cè)試。

  • 代碼CI驗(yàn)證。驗(yàn)證代碼CI正確。

  • 此節(jié)點(diǎn)下,每步的執(zhí)行結(jié)果無(wú)論是否成功,均需直接釋放測(cè)試集群,避免在大批量升級(jí)時(shí),占用過(guò)多的測(cè)試機(jī)器資源。當(dāng)執(zhí)行不成功時(shí),需要將異常日志完整保存,方便問(wèn)題排查。

  • 代碼合并

  • 當(dāng)前置所有節(jié)點(diǎn)通過(guò)后,可以認(rèn)為自動(dòng)升級(jí)已經(jīng)成功完成了:升級(jí)、部署、驗(yàn)證的工作,此時(shí)會(huì)自動(dòng)發(fā)起代碼合并請(qǐng)求。

  • 業(yè)務(wù)研發(fā)在Review后,將代碼合并至Master分支

  • 合并檢測(cè)

  • 系統(tǒng)會(huì)持續(xù)離線檢測(cè)Master分支的組件依賴情況,從而檢測(cè)是否完成升級(jí)

  • 線上檢測(cè)

  • 系統(tǒng)會(huì)持續(xù)離線檢測(cè)線上機(jī)器的組件依賴情況,從而檢測(cè)是否完成升級(jí)并已上線。

  • 釋放資源

  • 當(dāng)所有檢測(cè)通過(guò)后,認(rèn)為該升級(jí)任務(wù)已完成,會(huì)執(zhí)行各節(jié)點(diǎn)的釋放資源方法,釋放資源。例如:刪除代碼分支、再次檢查并釋放機(jī)器資源等。

除此之外,在每次大規(guī)模升級(jí)前,會(huì)先對(duì)指定范圍內(nèi)的應(yīng)用提前預(yù)升級(jí),從而提前摸查該次升級(jí)中的兼容性、穩(wěn)定性問(wèn)題。進(jìn)而保障升級(jí)的準(zhǔn)確性、升級(jí)推進(jìn)時(shí)的效率。

以下為系統(tǒng)實(shí)現(xiàn)示例圖:

系統(tǒng)示例圖系統(tǒng)示例圖

點(diǎn)擊應(yīng)用名,可查看該升級(jí)任務(wù)中各個(gè)流程節(jié)點(diǎn)的詳情數(shù)據(jù)。詳情數(shù)據(jù)包括成功情況、變更明細(xì)、失敗日志、失敗原因、重試間隔、最大重試次數(shù)、當(dāng)前重試次數(shù)、研發(fā)操作指引,以及一些基礎(chǔ)信息展示等。以下為系統(tǒng)示例圖:

系統(tǒng)實(shí)現(xiàn)示例圖2.png系統(tǒng)實(shí)現(xiàn)示例圖2.png

5. 任務(wù)編排&非功能性設(shè)計(jì)

為了適用不同場(chǎng)景的升級(jí),自動(dòng)升級(jí)對(duì)通用能力進(jìn)行流程節(jié)點(diǎn)的細(xì)化,并支持編排,整體能力如下圖所示:

圖片圖片

自定義流程編排.png

在任務(wù)編排中,我們重點(diǎn)做了如下設(shè)計(jì):

  • 支持任務(wù)編排。通過(guò)自定義配置實(shí)現(xiàn)節(jié)點(diǎn)順序編排。
  • 穩(wěn)定性設(shè)計(jì)

冪等執(zhí)行。消息可能存在重復(fù)消費(fèi),因此必須支持冪等消費(fèi)。

資源釋放&限流。在大規(guī)模升級(jí)時(shí),需要占用大量的資源進(jìn)行升級(jí)、部署、驗(yàn)證工作,為了避免對(duì)線上環(huán)境造成影響,自動(dòng)升級(jí)平臺(tái)對(duì)任務(wù)進(jìn)行了限流,并在測(cè)試驗(yàn)證通過(guò)時(shí)釋放部分資源、整個(gè)任務(wù)完成時(shí),釋放全部資源。

  • 支持按異常類型自定義重試策略。因在升級(jí)、部署驗(yàn)證過(guò)程中,可能會(huì)出現(xiàn)各種異常導(dǎo)致不成功,自動(dòng)升級(jí)平臺(tái)支持按照不同的異常類型來(lái)自定義重試策略,包括:重試間隔時(shí)間、最大重試次數(shù)。
  • 基于MQ的消息通知機(jī)制,進(jìn)行任務(wù)節(jié)點(diǎn)的自動(dòng)流轉(zhuǎn)、任務(wù)路由、執(zhí)行異步化。
  • 過(guò)程信息、異常信息可視化。因任務(wù)依賴的系統(tǒng)/組件較多,對(duì)于過(guò)程信息、異常信息需要記錄并可視化,降低任務(wù)的理解成本、問(wèn)題排查成本。
  • 擴(kuò)展性設(shè)計(jì)。每個(gè)流程節(jié)點(diǎn)均支持異步的通知擴(kuò)展,以及同步的前置/后置Hook調(diào)用。單個(gè)流程節(jié)點(diǎn)分為5個(gè)階段:前置處理、前置hook、處理邏輯、后置hook、后置處理。每個(gè)階段均可獨(dú)立擴(kuò)展。

6. 任務(wù)管控&功能性設(shè)計(jì)

自動(dòng)升級(jí)平臺(tái)支持任務(wù)的管控、統(tǒng)計(jì),能力如下圖所示

升級(jí)任務(wù).png升級(jí)任務(wù).png

  • 支持升級(jí)范圍的圈選。除支持按照應(yīng)用、團(tuán)隊(duì)圈選應(yīng)用外,還支持按照使用的Jar來(lái)圈選應(yīng)用(即:若應(yīng)用依賴某個(gè)Jar,則會(huì)自動(dòng)納入圈選)。
  • 支持Jar包源&目標(biāo)版本的設(shè)置,精準(zhǔn)控制,避免升級(jí)錯(cuò)誤。以下為示例圖:

圖片圖片

  • 與自動(dòng)升級(jí)插件聯(lián)動(dòng),支持升級(jí)規(guī)則的配置、升級(jí)插件版本的配置,支持不同的任務(wù)可執(zhí)行不同的升級(jí)規(guī)則。

圖片圖片

  • 支持升級(jí)任務(wù)編排。每個(gè)任務(wù)可獨(dú)立定制自己的任務(wù)流程。
  • 支持任務(wù)的重試、跳過(guò)、關(guān)閉(包含資源釋放)、重新開(kāi)始等管控功能。
  • 支持任務(wù)統(tǒng)計(jì)。

支持團(tuán)隊(duì)、應(yīng)用、任務(wù)階段維度的統(tǒng)計(jì)。

支持結(jié)果檢測(cè)統(tǒng)計(jì)。

支持執(zhí)行時(shí)長(zhǎng)、進(jìn)度維度的統(tǒng)計(jì)。

三、運(yùn)行數(shù)據(jù)

1. 支持事項(xiàng)

自動(dòng)升級(jí)平臺(tái)在近半年的時(shí)間里,支撐了貴州機(jī)房遷移測(cè)試環(huán)境演練升級(jí)、貴州機(jī)房遷移全量應(yīng)用升級(jí)、網(wǎng)關(guān)ZK拆分升級(jí)三大事項(xiàng)。

2. 運(yùn)行數(shù)據(jù)

  • 一次性升級(jí)成功率約50%。在小范圍、標(biāo)準(zhǔn)化的應(yīng)用升級(jí)任務(wù)中,一次性升級(jí)成功率較高,在貴州機(jī)房全量應(yīng)用升級(jí)中,一次性升級(jí)成功率約在50%左右。未能一次性升級(jí)成功的應(yīng)用,研發(fā)也可借助升級(jí)平臺(tái)進(jìn)行問(wèn)題排查&解決,提升升級(jí)效率。
  • 貴州遷移約節(jié)省人日約500人日,效率提升約83%。自動(dòng)升級(jí)平臺(tái)按照1000個(gè)應(yīng)用且僅升級(jí)一次保守統(tǒng)計(jì),總體節(jié)省人力約500人日,升級(jí)效率提升約83%

節(jié)約人力:0.6d(研發(fā)+QA升級(jí)并驗(yàn)證單個(gè)應(yīng)用的平均耗時(shí))  * 1000(應(yīng)用數(shù)) - 0.1d(自動(dòng)升級(jí)平臺(tái)升級(jí)并驗(yàn)證單個(gè)應(yīng)用的平均耗時(shí)) * 1000(應(yīng)用數(shù)) = 500d

效率提升 :500/600 = 83%

  • 數(shù)據(jù)對(duì)比如下:

圖片圖片

數(shù)據(jù)對(duì)比.png

3. 問(wèn)題總結(jié)

對(duì)于未能一次性升級(jí)成功的原因,歸納主要有:

  • 應(yīng)用組件版本過(guò)于陳舊,不符合升級(jí)最低版本要求。

因版本跨度較大,有太大兼容性問(wèn)題,自動(dòng)升級(jí)平臺(tái)不再予以支持。此部分應(yīng)用在貴州機(jī)房遷移過(guò)程中,也大都不再升級(jí),而是由各業(yè)務(wù)自行遷移。

  • 測(cè)試環(huán)境配置維護(hù)不足,自動(dòng)部署成功率低。
  • 測(cè)試環(huán)境配置維護(hù)不足主要體現(xiàn)在:應(yīng)用的構(gòu)建、發(fā)布配置上,例如:健康檢查未配置、啟動(dòng)類設(shè)置錯(cuò)誤、內(nèi)存參數(shù)設(shè)置不合理、期望啟動(dòng)時(shí)間設(shè)置不合理等等。

  • 組件依賴的使用方式多樣,也存在非標(biāo)準(zhǔn)的使用方式,升級(jí)工具覆蓋不足。

  • 非腳手架的老應(yīng)用,組件依賴的的使用方式較為多樣,也存在非標(biāo)準(zhǔn)的使用方式。

  • 升級(jí)工具基于OpenRewrite進(jìn)行二次開(kāi)發(fā),從實(shí)際運(yùn)行的效果來(lái)看,OpenRewrite的一些開(kāi)源規(guī)則仍有可完善的空間。

  • 新發(fā)布組件,因帶來(lái)新的依賴變更或依賴版本變更,帶來(lái)新的兼容性問(wèn)題。

  • 例如:dts-sdk,在3.x除部分類路徑、類名發(fā)生變更外,又新引入了servlet-api、jsp-api、logback、commons-beanutils-core等Jar包依賴,與云音樂(lè)技術(shù)中心的應(yīng)用、組件存在普遍的不兼容問(wèn)題。

  • 查詢的啟動(dòng)結(jié)果不準(zhǔn)確。

  • 部分應(yīng)用可能因啟動(dòng)時(shí)間過(guò)長(zhǎng)、多次自動(dòng)重啟,導(dǎo)查詢的啟動(dòng)結(jié)果不準(zhǔn)確

  • 少量應(yīng)用未接入自動(dòng)化測(cè)試用例。

四、未來(lái)展望

以下為能力規(guī)劃全景圖:

圖片圖片

未來(lái)規(guī)劃全景圖.png

  • 提升一次性升級(jí)成功率。
  • 增加Sidecar升級(jí)能力的支持。
  • 支持組件發(fā)布、版本管理、風(fēng)險(xiǎn)治理與自動(dòng)升級(jí)的聯(lián)動(dòng)。降低組件自身風(fēng)險(xiǎn)、同時(shí)提升組件側(cè)、治理側(cè)的效率,形成整體的閉環(huán)

圖片圖片

責(zé)任編輯:武曉燕 來(lái)源: 網(wǎng)易云音樂(lè)技術(shù)團(tuán)隊(duì)
相關(guān)推薦

2022-06-09 13:45:18

vivoK8S集群Kubernetes

2023-06-30 09:46:00

服務(wù)物理機(jī)自動(dòng)化

2014-07-15 13:41:41

阿里云可信云

2022-06-09 10:57:29

人工智能自動(dòng)化招聘

2021-07-23 11:08:12

自動(dòng)化

2018-01-30 13:45:50

Kubernetes容器自動(dòng)化管理

2021-07-26 05:33:59

自動(dòng)化領(lǐng)導(dǎo)CIO

2021-04-22 13:38:21

前端開(kāi)發(fā)技術(shù)

2024-05-27 00:00:00

PHP阿里云OSS

2016-04-15 00:43:13

2021-04-19 09:37:12

RocketMQ集群版本

2016-01-29 20:23:23

華為

2021-09-03 09:56:18

鴻蒙HarmonyOS應(yīng)用

2025-10-16 09:14:48

2023-11-20 07:27:00

云原生Spark

2021-09-29 10:23:38

人工智能自動(dòng)化AI

2024-01-10 18:49:47

2010-11-22 14:33:42

云網(wǎng)管服務(wù)器監(jiān)測(cè)

2010-07-15 09:53:02

云計(jì)算計(jì)算網(wǎng)絡(luò)

2022-12-29 08:56:30

監(jiān)控服務(wù)平臺(tái)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

亚洲精品动漫久久久久| 亚洲影院在线观看| 国产精品一区av| 日韩a级片在线观看| 精品国产午夜肉伦伦影院| 欧美性高潮床叫视频| 亚洲二区自拍| 天堂中文在线观看视频| 麻豆中文一区二区| 国内精品久久久久久中文字幕| 中文字幕网站在线观看| 欧洲一区在线| 欧美日韩一区三区| 日韩av在线播放不卡| av在线三区| 北条麻妃国产九九精品视频| 国产日韩综合一区二区性色av| 日韩精品无码一区二区| 91高清一区| 一区二区三区回区在观看免费视频| 亚洲精品在线视频播放| 依依综合在线| 亚洲电影一级黄| 国产又粗又大又爽的视频| 麻豆国产在线播放| 老妇女50岁三级| 亚洲精品亚洲人成在线| 日韩一级黄色大片| 一路向西2在线观看| 345成人影院| 亚洲综合久久久| 在线视频不卡一区二区| 精品视频三区| 久久天堂av综合合色蜜桃网| 国产精品久久国产三级国电话系列| 亚洲一卡二卡在线观看| 久久看片网站| 5252色成人免费视频| 久久久久久福利| 欧美一区二区| 操91在线视频| 国产真实乱在线更新| 欧美肉体xxxx裸体137大胆| 日韩精品在线播放| 精品国产av色一区二区深夜久久 | 欧美精品观看| 日韩视频精品在线| 少妇太紧太爽又黄又硬又爽小说| 欧洲精品99毛片免费高清观看 | 强乱中文字幕av一区乱码| 精品福利久久久| 亚洲另类图片色| aa一级黄色片| 色哟哟精品丝袜一区二区| 精品福利一区二区三区免费视频| 在线观看一区二区三区视频| 日韩中文字幕无砖| 日韩三级视频在线观看| 青青草原播放器| 欧美电影院免费观看| 91精品国产91综合久久蜜臀| 在线观看日本www| 精品视频一区二区三区在线观看| 欧美猛男男办公室激情| 日韩欧美国产片| 粉嫩av国产一区二区三区| 8x福利精品第一导航| 人妻精油按摩bd高清中文字幕| 亚洲一区二区三区四区电影| 日韩精品专区在线影院重磅| 伊人久久久久久久久| 国产精品久av福利在线观看| 日韩黄色在线免费观看| 欧美成人国产精品一区二区| 97久久夜色精品国产| 久久91亚洲精品中文字幕| 日本一区二区不卡在线| 日韩高清一区在线| 国产在线视频91| 免费观看成年人视频| 久久综合九色综合久久久精品综合| 国内一区二区在线视频观看| 亚洲欧美色视频| 国产精品午夜电影| 97超碰人人爱| 午夜裸体女人视频网站在线观看| 欧美在线免费播放| 日韩高清在线一区二区| 久久香蕉网站| 丝袜亚洲另类欧美重口| 久久久久久久福利| 久久久www| 91青青草免费观看| 欧美伦理影视网| 亚洲免费在线播放| 女人扒开屁股爽桶30分钟| 成人影院在线免费观看| 精品国产免费视频| 美国美女黄色片| 激情五月***国产精品| 国产精品99久久久久久久久| www.五月婷婷| 国产精品网站在线观看| 亚洲熟妇无码一区二区三区| 成人在线观看免费播放| 精品电影一区二区三区| 黄色免费一级视频| 99精品视频免费| 成人激情春色网| 欧美午夜黄色| 亚洲国产精品一区二区www| 亚洲综合婷婷久久| 九九热线有精品视频99| 欧美激情视频网| 国产理论片在线观看| 久久网站热最新地址| 无码日本精品xxxxxxxxx| 久久婷婷五月综合色丁香| 日韩精品一二三四区| 日本一本高清视频| 国产精品综合av一区二区国产馆| 亚洲.欧美.日本.国产综合在线 | 国产美女精品免费电影| 三级在线电影| 午夜视频一区二区| 中文字幕一二三区| 99精品在线观看| 国产精品日韩欧美大师| 国产视频二区在线观看| 欧美性猛交99久久久久99按摩| 俄罗斯女人裸体性做爰| 亚洲天堂一区二区三区四区| 3d动漫精品啪啪| 亚洲av无码一区二区三区网址 | 91黄色小网站| 日韩av三区| 国精产品一区一区三区有限在线| a级片免费视频| 1000精品久久久久久久久| 三级视频中文字幕| 国产精品欧美在线观看| 日本精品视频在线| 日韩美女一级视频| 粉嫩老牛aⅴ一区二区三区| 亚洲麻豆一区二区三区| 欧美日韩ab| 国产精品大全| heyzo一区| 亚洲成人黄色网址| 日韩 欧美 精品| av在线综合网| 任你操这里只有精品| 色综合综合网| 国产精品久久久一区| 91电影在线播放| 欧美日韩国产系列| 久久爱一区二区| 国产一区激情在线| 日韩国产小视频| 久久综合社区| 国产成人精品av在线| 9191在线| 欧美不卡激情三级在线观看| 国产精品theporn动漫| av毛片久久久久**hd| 免费在线观看亚洲视频 | 一区二区视频国产| 国产精品视频一区视频二区| 欧美大片欧美激情性色a∨久久| 亚洲福利在线观看视频| 精品福利一区二区| 国产精品www爽爽爽| 国产揄拍国内精品对白| 久久久久久久9| 亚洲精品国模| 国产精品尤物福利片在线观看| 成人日韩欧美| 日韩精品欧美激情| 中文字幕码精品视频网站| 日韩毛片高清在线播放| 亚洲美女高潮久久久| 亚洲在线成人| 尤物一区二区三区| 另类春色校园亚洲| 国产美女被下药99| av电影免费在线看| 神马国产精品影院av| 亚洲免费一级片| 91福利在线看| 久久久久亚洲av成人片| 国产偷国产偷精品高清尤物| 欧美日韩一区二区区| 日韩精品亚洲一区二区三区免费| 99久久99久久精品| 日韩在线麻豆| 91亚色免费| 麻豆精品蜜桃| 欧美激情亚洲自拍| 四虎久久免费| 日韩美女av在线| 亚洲第一天堂影院| 欧美日韩高清一区二区三区| 日韩av在线播放观看| 一区视频在线播放| av在线网站观看| 国产suv一区二区三区88区| 精品久久久噜噜噜噜久久图片| 国产一区日韩一区| 中国成人在线视频| 国产成人调教视频在线观看| 成人免费看片网址| 永久免费观看精品视频| 日韩美女在线播放| 91美女主播在线视频| 久久香蕉频线观| 极品白浆推特女神在线观看| 精品福利一二区| 国内老熟妇对白hdxxxx| 在线观看成人小视频| 日韩成年人视频| 一区二区三区不卡在线观看| 日本免费网站视频| 国产网站一区二区三区| 女尊高h男高潮呻吟| 成人手机电影网| 佐山爱在线视频| 国产麻豆视频精品| mm131亚洲精品| 日精品一区二区| 人妻丰满熟妇av无码区app| 99视频精品| 黄色激情在线视频| 国产精品mv在线观看| 一区二区三区偷拍| 欧美a级成人淫片免费看| 日本一区高清不卡| 亚洲婷婷影院| 麻豆精品蜜桃一区二区三区| 女仆av观看一区| 久久大片网站| 欧美激情影院| 精品不卡在线| 亚洲人成网亚洲欧洲无码| 久久精品午夜一区二区福利| 秋霞在线一区| 蜜桃欧美视频| 欧美另类69xxxxx| 日韩av在线电影观看| 国产成人精品三级高清久久91| 欧美在线3区| 欧洲杯什么时候开赛| 婷婷五月色综合| 天天做天天爱天天综合网2021| 亚洲欧美日本国产有色| 国产精品国内免费一区二区三区| 国产精品99久久久久久大便| 亚洲成人最新网站| 黄色片免费在线观看视频| 黄色在线成人| 日韩在线综合网| 玖玖精品视频| 日韩欧美国产片| 国产成人精品影院| xxxxxx黄色| 国产亚洲福利社区一区| 欧美精品日韩在线| 一区二区三区在线视频观看| 日本网站在线免费观看| 色综合久久综合网欧美综合网| 久久久久久av无码免费看大片| 777久久久精品| 黄色片网站免费在线观看| 亚洲欧洲偷拍精品| 香蕉视频在线看| 久久久久久91| 素人啪啪色综合| 亚洲自拍偷拍区| 亚欧日韩另类中文欧美| 一区国产精品| 亚洲二区视频| 污污的视频免费| av在线播放不卡| 久久免费手机视频| 亚洲午夜一区二区| 波多野结衣激情视频| 欧美一级爆毛片| 麻豆影视在线| 欧美激情视频给我| 日本另类视频| 国产伦精品一区二区| 菠萝蜜一区二区| 欧美无砖专区免费| 美女诱惑一区二区| 欲求不满的岳中文字幕| 亚洲日本欧美天堂| 无码人妻丰满熟妇区五十路| 日韩三级免费观看| 国产精品麻豆一区二区三区| 色综合男人天堂| 国内欧美日韩| 久久精品国产一区二区三区日韩 | 91蝌蚪porny| 欧美日韩在线观看成人| 色综合激情五月| 午夜精品久久久久久久第一页按摩| 亚洲欧洲日韩国产| wwww亚洲| av噜噜色噜噜久久| 99久久www免费| 草草草在线视频| 91亚洲精品一区二区乱码| 全网免费在线播放视频入口 | 亚洲国产精品成人久久蜜臀| 中文字幕亚洲一区在线观看 | 欧美久久久久久蜜桃| 日本又骚又刺激的视频在线观看| 米奇精品一区二区三区在线观看| 国产成人免费| 婷婷四月色综合| 日韩和欧美一区二区三区| 亚洲欧美在线不卡| 亚洲国产综合在线| 国产美女免费看| 久久精品一区中文字幕| 久久亚洲国产精品尤物| 日韩久久久久久久久久久久久| 国产日韩专区| 精品中文字幕在线播放| 亚洲大片在线观看| 人人妻人人玩人人澡人人爽| 九九久久精品一区| 欧美另类中文字幕| 一本色道久久88亚洲精品综合| 国产一区二区三区香蕉| 我要看黄色一级片| 91精品午夜视频| www在线观看播放免费视频日本| 成人精品久久av网站| 久久精品亚洲人成影院| 国产精品嫩草影院8vv8| 中文字幕在线观看不卡| 97caocao| 欧美高清自拍一区| 香蕉大人久久国产成人av| 久久观看最新视频| 成人一道本在线| 日韩乱码人妻无码中文字幕| 亚洲国产一区二区三区在线观看 | 日本欧美在线视频免费观看| 国产欧美日韩视频| 亚洲国产成人精品女人| 亚洲熟女乱综合一区二区| 亚洲一区二区在线免费观看视频| 成人久久久精品国产乱码一区二区| 欧美精品18videosex性欧美| 日韩最新在线| 婷婷丁香激情网| 最好看的中文字幕久久| 性中国xxx极品hd| 97精品在线视频| 少妇精品久久久一区二区三区 | www.久久爱.com| 久久香蕉视频网站| av成人老司机| 999视频在线| 久久久成人精品视频| 这里视频有精品| 97视频在线免费播放| 欧美国产精品一区二区三区| 91成品人影院| 欧美激情一二三| 欧美综合一区| 亚洲AV无码久久精品国产一区| 午夜一区二区三区视频| 国产在线一二三区| 91天堂在线观看| 亚洲精一区二区三区| www.黄色在线| 日韩欧美一级二级三级久久久| 在线男人天堂| 波多野结衣激情| 久久久综合激的五月天| 国产又黄又爽视频| 91精品国产91久久久久久| 日韩精品四区| 亚洲精品中文字幕在线播放| 欧美日韩午夜精品| 99热99re6国产在线播放| 水蜜桃亚洲精品| 成人av网站大全| 国产尤物视频在线观看| 午夜欧美大片免费观看| 天天做天天爱天天爽综合网| aa一级黄色片| 日韩欧美亚洲国产另类| 全亚洲第一av番号网站| 大伊香蕉精品视频在线| 中文字幕制服丝袜一区二区三区| 手机在线观看毛片| 91免费看片在线|