發布時間:2020-07-08
隨著互聯網的發展與各種新業務的出現,全鏈路壓測將被應用到更多的日常場景中去,那么為什么這些企業都需要做全鏈路壓測呢?
早先的時候,壓測并不是針對業務的全鏈路來開展的,而是采用了“各個擊破”的原則,即對生產環境中的單機或者單系統進行獨立的壓測。單系統獨立壓測模擬海量請求主要有兩種實現方式:
1、根據設計的壓力來直接模擬大量的并發調用;
2、先獲取線上真實的流量請求,然后經過數據清洗再回放模擬大量的并發調用。
單系統獨立壓測的弊端在某大型活動例如秒殺放開的瞬間,從CDN、網關接入、前端、緩存、中間件、后端服務、數據庫整個交易鏈路都會面臨巨大的訪問壓力,這個時候系統服務除了受自身的影響外,還依賴于其他關聯系統的影響,并且該影響會一直蔓延,只要有一個節點出現故障,那么故障在上下游系統經過層層累加后造成的影響將難以追溯。
現階段的全鏈路壓測在真實的生產環境上以真實的量級去模擬真實的業務操作,并以此來衡量系統的實際承載能力,或者找出系統的瓶頸點。
這樣的好處是在大促前夕就能在線上環境進行真實模擬,以此改進修復自身系統的不足,從而保障系統在流量的沖擊下保持穩定。隨著近幾年的電商不斷發展,一些如“雙11”“雙12”“618”等等大促日如雨后春筍般冒了出來,于是基于真實的生產環境來模擬海量的并發用戶請求和數據,就顯得十分必要了。
全鏈路壓測能解決什么問題?
隨著移動互聯網、云計算、物聯網等技術的不斷發展,應用架構也變得更加離散和復雜,一個應用的高穩定性不僅需要自身系統的穩健,同時也更加依賴網絡、第三方服務的質量,而這些外部的"不確定"因素讓穩定性變得更加"不可控"。在這種"不可控"的復雜環境中,如何保障高并發條件下的應用性能穩定性,需要解決以下問題:
1、高流量下的系統穩定性不足,如易崩潰、卡頓等問題;
2、新代碼上線的性能基線比對,如RT、CPU load、數據庫性能比對等;
3、不知道該如何合理配置機器配置和數量,多配或少配等問題;
4、系統日常運行不穩定,時不時宕機、服務不可用等問題;
5、代碼變化頻繁,幾經易手后,架構混亂、難梳理等問題;
6、對于運行的情況不清楚,不知道當前性能健康程度如何的問題;
當然全鏈路壓測的過程中顯然不止這些問題,而全鏈路壓測的主要作用就是通過模擬超大流量沖擊鏈路上的這些節點,觀察鏈路在流量峰值時的表現和故障情況,來發現鏈路流程上的瓶頸或性能問題。
推薦閱讀:
您的信息已成功提交!
我們的客服人員稍后會與您聯系