大規(guī)模檢索系統(tǒng)的DevOps實(shí)踐_第1頁
大規(guī)模檢索系統(tǒng)的DevOps實(shí)踐_第2頁
大規(guī)模檢索系統(tǒng)的DevOps實(shí)踐_第3頁
大規(guī)模檢索系統(tǒng)的DevOps實(shí)踐_第4頁
大規(guī)模檢索系統(tǒng)的DevOps實(shí)踐_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、大規(guī)模檢索系統(tǒng)的DevOps實(shí)踐技術(shù)創(chuàng)新 變革未來百度檢索系統(tǒng)的現(xiàn)狀鳳巢檢索系統(tǒng)的DevOps選型鳳巢檢索系統(tǒng)的DevOps實(shí)踐鳳巢檢索系統(tǒng)的DevOps應(yīng)用效果主要內(nèi)容百度檢索系統(tǒng)的現(xiàn)狀搜索:立足之本鳳巢:發(fā)展之匙手百:時(shí)代之趨業(yè)務(wù)復(fù)雜團(tuán)隊(duì)龐大迭代快速線上服務(wù)模塊200+ 代碼量10w+/周大商業(yè)團(tuán)隊(duì)400+人核心模塊要求每周2次上線具有緊急上線的能力鳳巢檢索系統(tǒng)的DevOps選型三大特性:Single Code Base產(chǎn)品源代碼,只保持最新的版本,每次編譯都基 于該最新版本,每次發(fā)布二進(jìn)制產(chǎn)品也基于該最 新版本。Continuous Build Verification對該base的源代

2、碼,維護(hù)一套自動(dòng)化測試的系統(tǒng), 對該base上源代碼的質(zhì)量進(jìn)行持續(xù)編譯,測試, 再編譯,再測試的過程。Regular Release Process軟件產(chǎn)品的發(fā)布是定期的。該周期不依賴于某一 個(gè)特性是否研發(fā)完畢而決定的,只要到了時(shí)間, 就發(fā)布。合并代碼統(tǒng)一測試merge成本需求1需求2需求nBUG Meeting解決merge回主干困難,回歸成本高問題。解決隨著項(xiàng)目增多,分支增多,越來越難管理問題。修復(fù)bug,可以達(dá)到修改主干,多處都可以fix的效果。解決在實(shí)驗(yàn)過程中,難以比較兩個(gè)實(shí)驗(yàn)間的相互影響問題。解決QA只保證單上線分支質(zhì)量,忽視merge后質(zhì)量的問題。Single branch相對Mu

3、ti branch development之優(yōu)勢:分 支 開 發(fā)版本庫代碼其他開發(fā)人員的提交第一次本地驗(yàn)證第二次本地驗(yàn)證1234456提交構(gòu)建階段代碼流向代碼修改 |運(yùn)行測試 |圖例:構(gòu)建成功的版本 |將代碼從版本庫檢出到本地為新功能或者bug修改代碼,或開發(fā)測試代碼第一次運(yùn)行本地驗(yàn)證(localbuild)與版本庫中的代碼合并,再次執(zhí)行本地驗(yàn)證(localbuild)提交代碼到版本庫(提交前需要發(fā)起CodeReview,并通過)構(gòu)建任務(wù)被自動(dòng)觸發(fā)六步 走master/trunk上線模式A:主干上線上線上線上線?bugfix線上代碼獨(dú)立于主干之外上線模式B:分支上線master/trunk上線

4、上線bugfixbranch1branch2支持緊急上線鳳巢檢索系統(tǒng)的DevOps實(shí)踐線上質(zhì)量需求管理提交準(zhǔn)入構(gòu)建系統(tǒng)灰度發(fā)布靜態(tài)代碼檢查規(guī)則可定制監(jiān)控快速預(yù)警&止損需求流程管理 規(guī)范化、明確化持續(xù)集成 功能測試 系統(tǒng)測試部署測試仿真線上需求管理全流程內(nèi)部規(guī)則代碼分析函數(shù)調(diào)用關(guān)系代碼清理單測覆蓋率模塊編碼規(guī)則內(nèi)部lib使用規(guī)范前置測試:代碼提交準(zhǔn)入階段(綁定代碼庫hook)低成本:不需要case、不需要環(huán)境、不需要數(shù)據(jù)避免誤報(bào)常見工具存在誤報(bào)cppcheck規(guī)則可定制When?Why?Jenkins分級構(gòu)建調(diào)度層靜態(tài)檢查編譯功能測試系統(tǒng)測試覆蓋率cov統(tǒng)計(jì)灰度發(fā)布部署測試組件層cppcheck

5、并行集群單元測試diff測試findbugs模塊測試性能測試local發(fā)起壓力測試資源層RD + QA運(yùn)行環(huán)境機(jī)器資源測試數(shù)據(jù)代碼提交后,進(jìn)行測試任務(wù)分級構(gòu)建check in功能測試:驗(yàn)證某功能點(diǎn)是否符合預(yù)期系統(tǒng)測試:本次升級對整個(gè)服務(wù)的影響(diff、性能、壓力)范圍單函數(shù)、單模塊整個(gè)系統(tǒng):多模塊、多服務(wù)環(huán)境輕量級仿真線上數(shù)據(jù)單條、多條萬/十萬級別下游mock真實(shí)下游運(yùn)行時(shí)長秒級別分鐘/小時(shí)級別功能測試和系統(tǒng)測試的對比系統(tǒng)測試:構(gòu)建系統(tǒng)中最復(fù)雜的環(huán)節(jié)1、環(huán)境仿真、數(shù)據(jù)量大、任務(wù)執(zhí)行時(shí)間長2、涉及范圍廣:多模塊、多服務(wù)系統(tǒng)測試三大挑戰(zhàn)資源機(jī)器&數(shù)據(jù)需求效率環(huán)境&任務(wù)時(shí)間成本準(zhǔn)確百萬測試數(shù)據(jù)真實(shí)

6、性BDC云儲存offlineAeNBeNBeNBonlinetcpcopyredisredisredis多庫eNB回 放 服 務(wù)壓力數(shù)據(jù)管理ABVI PeNBeNBC壓 力 工 具測試任務(wù)測試平臺線上錄制數(shù)據(jù)運(yùn)維回放集群測試解耦線線上下錄回制放壓力數(shù)據(jù)通用dirverABCeNBeNBeNB0庫1庫n庫回放服務(wù)redis集群VIP協(xié)議測試解耦過程回放數(shù)據(jù)對應(yīng)關(guān)系:signB 9002A 9001C 9003支持動(dòng)態(tài)變更可擴(kuò)展&易維護(hù)ABCDECDEPTESTdriverABDEABDEONLINE北京 上海 深圳 杭州CC灰度發(fā)布:避免線上環(huán)境不一致&配置沖突導(dǎo)致的問題上線前的最后一道閘門:環(huán)境仿真&配置一致啟動(dòng)? 崩潰?PASS不進(jìn)行業(yè)務(wù)邏輯檢查目的:對線上服務(wù)了如指掌磁盤內(nèi)存流量展現(xiàn)同環(huán)比絕對值基本數(shù)據(jù)業(yè)務(wù)數(shù)據(jù)采集存儲監(jiān)控進(jìn)程core收入平響個(gè)性化redismysqlhdfs團(tuán)隊(duì)專題健康頁機(jī)器信息日志信息模塊采集數(shù)據(jù)聚合數(shù)據(jù)對比支持監(jiān)控圖表類型:趨勢圖:同環(huán)比、多維對比表格:報(bào)表展現(xiàn)等其他個(gè)性化圖表: 分布圖,健康頁等主要報(bào)警類型:同環(huán)比報(bào)警, 絕對值報(bào)警,小流量報(bào)警(支持指

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論