《億級流量背后的可靠性保障方案_王紫薇.pdf》由會員分享,可在線閱讀,更多相關《億級流量背后的可靠性保障方案_王紫薇.pdf(26頁珍藏版)》請在三個皮匠報告上搜索。
1、億級流量背后的可靠性保障方案分享人:王紫薇個人簡介姓名:王紫薇所在組織:搜索事業部專業領域:主要負責一級引擎測試目 錄010203背景介紹線上穩定性保障容量測試線下性能測試實施搜索特點性能和穩定性要求高分布式、集群化、機器多、在線部分數十個服務部署在兩地四中心的上萬臺機器上架構復雜單日pv高、需求廣泛、高時效性,百億網頁百萬級別的日志數據流量高整條服務鏈路長,涉及服務多,服務相互依賴,服務內部自適應動態調整策略多業務復雜服務性能p99毫秒級別,明顯影響用戶體驗,用戶容忍度低,要求服務高可用性能敏感保障場景01服務版本日常迭代更新上線:模型、策略日常更新新服務上線,當前服務資源與上下游服務是否能
2、承載02計劃變動03突發事件機器更新:系統更新,硬件更新架構變動:服務鏈路發生變動對資源消耗的影響線上故障:機器故障、服務異常、異常告警流量突增:緊急響應,緊急擴容線上穩定性問題緊急情況下的預案整體服務的容量是多少哪些服務成為鏈路的瓶頸每個服務的容量和余量服務是否需要擴容,擴容多少,怎么擴容線上穩定性保障預案容量方案制定方案制定組織團隊、確認預期、準備數據測試過程測試過程壓測執行、觀察監控、驗證預期、記錄問題測試結論測試結論復盤異常、推進優化、優化驗證余量預案線上穩定性保障容量測試整體流程準備測試執行測試結論準備階段1 1目標確立目標確立壓測目標:從哪里驗證?何時驗證?重點驗證點:對重點改動事
3、項做預估期望達到的容量2 2異常處理方案異常處理方案目標:盡量不要讓非主流程服務影響整體壓測單點問題:發現問題時下掉資源不夠,可動態擴容:影響整體指標后,記錄,并擴容熔斷、降級、擴容3 3壓測壓測數據數據目標和要求:模擬線上用戶行為模型方式:線上日志解析+動態數據集補充壓測數據線上流量回放線上流量回放來源線上真實用戶行為根據壓測目標確定獲取線上數據服務動態數據動態數據集集01010202強時效性泛時效性時效性時效性意圖識別Query特征Query改寫分類分類QUERYQUERY篩選染色常規流量常規流量特殊邏輯特殊字符異常累積異常異常QUERYQUERY命中各種策略邏輯策略策略QUERYQUER
4、Y終止條件對比目標對比目標指標維度指標維度服務層面服務層面服務器指標:coredump,error服務指標:p99,p90,p50,avg業務指標:壞結果率,重試qps,策略觸發率進程指標:cpu,內存等資源消耗指標維度指標維度超預期很高時終止對比目標對比目標主流程服務:嚴重影響性能、效果非主流程服務:無法實施降級、停止,并且影響了整體的性能時終止服務層面服務層面監控指標整體流程準備測試執行測試結論壓測執行執行階段執行階段梯度發壓:每次增加壓力梯度不要太高,避免流量的陡增增量加壓到線上水平,增量加壓到線上水平,保持穩定運行保持穩定運行試探線上余量,加壓保持時間間隔增量加壓增量加壓異常情況解決方
5、案、定位、目標驗證觀測監控觀測監控填充基礎cache壓測預熱壓測預熱告警屏蔽、外部服務調用:關閉廣告、收費方案集群環境:日常資源消耗任務保留、保證服務正常上線、環境驗證環境準備環境準備01010202030304040505壓測平臺壓測平臺 參數配置:預制basic.jmx+插件.jmx通過模板語法來動態組合 Jmeter指標收集:通過InfluxdbBackendListener來實現 壓力機和服務器指標收集:通過Telegraf(數據采集工具)壓測執行執行階段執行階段梯度發壓:每次增加壓力梯度不要太高,避免流量的陡增穩定運行穩定運行試探線上余量,加壓保持時間間隔增量加壓增量加壓異常情況解決
6、方案、定位、目標驗證觀測監控觀測監控填充基礎cache壓測預熱壓測預熱告警屏蔽外部服務調用:關閉廣告、收費方案集群環境:日常資源消耗任務保留環境驗證環境準備環境準備01010202030304040505整體流程準備測試執行測試結論效果數據支撐摸清線上容量情況,對后續的產品策略提供了數據支撐隱患暴露性能問題、機器資源問題、服務代碼問題、環境問題等流量空間推動資源擴容、代碼優化、資源合理分配,提高了整理流量空間異常機制推進服務優化、建立分級降級方案、熔斷機制等線下性能測試實施線下性能測試環境準備壓測數據壓測執行測試報告構造數據集線上流量錄制多種執行方式靈活的機器配置自動化報告環境治理性能目標Mo
7、ck的應用壓測平臺多種執行方式支持通用壓測文件執行外,可以根據不同服務的特殊需求,使用自定義jmx文件,或者直接使用錄制文件進行流量回放。自定義jmx倒流壓測壓測平臺多種執行方式支持通用壓測文件執行外,可以根據不同服務的特殊需求,使用自定義jmx文件,或者直接使用錄制文件進行流量回放。靈活的機器配置一鍵添加壓力機,壓力機動態化,上下線更靈活,支持私有壓力機自動化測試報告可用性:提供整體測試結論、詳細指標在各個維度上的具體結果;展示服務端、壓測端、部署機器的指標信息;支持壓測結果在絕對閾值上的結果、new/base環境的性能diff結果;可視化統一圖表展示,結果便于觀察可配置:自動化測試報告可自由配置重點關注指標、指標閾值,根據服務靈活配置自動化:人工分析過程形成一套可自動化執行的流程,壓測完成之后直接生成報告,給出性能結論,性能問題直接定位THANK YOU