影片點播業務過載保護方案的測試實踐
前些日子,大批美國網友 “湧入” 小紅書,小紅書幾乎一瞬間就登頂了美區 App Store 免費榜。網際網路面向使用者的業務流量往往無法提前準確判斷,總會面臨突發流量,造成服務承受平時數倍的壓力,無法及時處理請求。過載保護的目標是服務過載情況下,仍能盡其所能對外服務,不至於系統癱瘓,從而保障使用者體驗和服務質量。
今天,我們就以社交平臺核心的影片點播業務場景為例,為大家分享如何使用壓力測試工具,對服務中過載保護方案針對性地進行測試,從而實現方案的選型和日常服務的效能最佳化測試。希望藉此幫助近期類似需求的同學,隨時隨地發起測試,節省大家的時間!
影片點播業務的過載保護特點
短影片業務的服務採用微服務架構,在微服務中由於服務間相互依賴很容易出現連鎖故障導致雪崩。因此,在接入過載保護時需要考慮到微服務的複雜性,即組合過載問題。
基於這一的特點,影片點播在過載保護上需要達到 2 個目標:
1.是過載保護的能力具有通用性,能適應大多數業務場景;
2.是除了點對點的過載保護能力外,還能解決微服務鏈式場景和服務多扇出場景下的過載保護。
過載保護方案的測試實踐
這裡以 tRPC-Go overload control 和 tRPC-Robust 2 款業界常見的過載保護為例,來分享如何開展針對性壓力測試,從而確定最適合自身業務場景的方案,其中主要測試物件和引數對比如下:
●接入外掛/未接入外掛
●服務過載/服務未過載
●單個服務過載/組合過載
●壓測時間 3 分鐘/10 分鐘
1.壓測方案設計
- 單個服務過載測試
- 組合過載測試(僅開 server 端)
- 壓測時間統一分為 3 分鐘和 10 分鐘
- 測試需覆蓋的要點:
- 服務原效能:沒有接入外掛,服務過載,成功率
- 接入外掛:在沒有過載情況下,對服務效能影響;服務過載,成功率
- 服務過載可以配置(1.5 倍,3 倍,5 倍等,極限下看服務成功率到 0)
2.實施步驟和提效技巧 ( 這裡使用的是優測壓力測試工具)
STEP 1:測試資料準備與協議同步
在實施壓測之前,需要準備大量的測試資料模擬使用者場景,優測後臺一體化工具支援協議檔案自動與 rick 平臺同步,省去反覆手動上傳協議檔案的煩惱。
[產品經理是否可以提供圖片]
Tips:在新建服務的時候只需勾選 rick 平臺同步,每次協議檔案更新,會自動推送到優測平臺非常方便。
STEP 2:測試場景構造與任務配置
建立的測試場景可自動關聯協議檔案,並支援引數化配置,新增業務斷言非常方便,同時測試場景不僅可用於壓力測試,也可複用於介面測試、介面監控等,極大的提高測試效率。
a. 測試場景:自動生成的場景用例,可在全域性變數中找到資料檔案,包含流量資料的詳細請求資訊。同時透過出參定義和請求結果斷言快速新增自定義斷言。
b. 壓測任務:基於同一測試場景,配置不同的測試任務,主要在 QPS 的配置上,節點請求(向哪個容器節點/叢集發起請求)等定製化部分做修改即可。
c. 手動調壓:為提高壓測效率,我們選擇了手動調壓模式,即在壓測過程中可以根據服務效能資料隨時調整閾值,即刻生效。
STEP 3:報告分析對比與持久化儲存
優測後臺一體化工具提供非常友好的視覺化報告。壓測任務完成後,可以方便地看到該場景下的所有歷史報表和資料;報告對比功能,可以同時檢視多次壓測結果資料,能夠方便直觀地進行各種方案的資料分析和對比;與其他平臺相比,後臺一體化最大優勢是將報告結果資料持久化儲存,為下次壓測做為參考。
透過測試結果,可以對比分析哪款方案整體表現更優:
- 固定 QPS 壓測,對比方案的更穩定一點、成功率,以及耗時;判斷時延是否在業務可接受範圍內
- 不斷變化 QPS 壓測,可以測試出哪款方案最大化服務效能,更為及時探測到過載並啟動保護,當過載結束,服務也能比較快恢復。
以上是本次的分享,希望能夠對大家有所幫助!
本文未註明其它來源的內容,其版權優測雲服務平臺所有,未經原作者允許不得轉載本文內容。
相關文章
- 微服務過載保護原理與實戰微服務
- 大檔案下載及影片點播的CDN加速實踐
- 過載保護原理與實戰
- 保護你微服務架構安全的三個最佳實踐微服務架構
- 直播轉點播實踐
- 保護企業資訊保安,阿里雲滲透測試服務釋出阿里
- 測試微服務的4個最佳實踐微服務
- 滴水中級班保護模式階段測試作業模式
- 談談保護敏感資料的最佳實踐
- 最簡單的微服務部署測試實踐微服務
- 網易 Android 遊戲保護實踐Android遊戲
- 擔心介面出問題,自動化測試-定時任務為業務保駕護航
- 繼電器測試負載箱的維護和保養方法有哪些?負載
- 質量運營在智慧支付業務測試中的初步實踐
- Oracle的過載保護-資料庫資源限制Oracle資料庫
- 中興通訊測試專案實踐:敏捷測試特性文件的交付過程實踐探討敏捷測試
- 阿里雲視訊點播服務端API和SDK測試阿里服務端API
- 單測在商家前端業務中的實踐前端
- 四個保護資料安全的技術實踐
- 戴爾易安信:保護業務 從保護資料開始
- 電商業務測試方案與實戰落地 (轉轉) - 田西西
- 移動App安全等級保護測評防護要點APP
- 直播與點播之三_測試、理解
- 車載乙太網第二彈|測試之實錘-AVB測試實踐
- DevOps 中的測試實踐dev
- DevOps中的測試實踐dev
- 雲上影片業務基於邊緣容器的技術實踐
- 固態硬碟掉電保護的原理及測試方法硬碟
- 通過Dapr實現一個簡單的基於.net的微服務電商系統(十七)——服務保護之動態配置與熱過載微服務
- 華為雲等保方案,為企業上雲保駕護航
- guava cache過期方案實踐Guava
- 基於Sentinel自研元件的系統限流、降級、負載保護最佳實踐探索元件負載
- 技術乾貨 | ToB 業務場景下自動化測試的實踐及探索
- 守護夏日清涼:EasyCVR+AI影片管理方案為水上樂園安全保駕護航VRAI
- 探討Morest在RESTful API測試的行業實踐RESTAPI行業
- 使用PostMan Canary測試受Identity Server 4保護的Web ApiPostmanIDEServerWebAPI
- Golang專案的測試實踐Golang
- 更專業的過等保服務,華為雲等保合規解決方案值得選擇!
- 故障測試與效能測試交叉實踐