天天看點

行業内全鍊路壓測的發展

近期在和業内學習交流,加上自己思考,抽象梳理總結下,行業内全鍊路壓測的發展,分為以下幾個階段

1.有的問題。2013年左右阿裡為解決服務穩定性問題,做鍊路壓測,做的全鍊路壓測系統。其它公司後續也跟進。這個階段主要解決 有的問題,就是要先有一個全鍊路壓測系統。這是第一階段。

2.自助化使用。網際網路行業靈活開發,多次疊代,多次部署,環境老變,需要測試常态化。全鍊路壓測變成常态化。這就需要測試配合開發,使用全鍊路壓測系統,做壓測,這樣占用大量測試資源人力時間。是以通過實作全鍊路壓測系統,自助化、自動化部署,使用,讓使用這個系統的人的角色,由測試,變為開發,讓開發人員自己能發起全鍊路壓測。這就需要實作自助化。這是第二階段。

3.性能定位效率問題。在微服務,多個服務的情況下,整個後端非常複雜。用戶端一個請求,需要涉及到等多個服務。壓測發現的服務端性能&功能問題,需要快速的定位到哪一個服務,哪一個子產品,哪一個接口,哪一個函數,哪一行代碼 導緻的功能/性能問題,比如 響應延時高,傳回值錯誤 。如何快速定位,就是一個挑戰。想象下,100萬并發,壓測流量,打上1小時,産生的http請求有36億次。每個請求,調用10個service,每個service又包含幾十個子產品,幾百個接口。這個資訊是爆炸的。是以如何快速定位性能&功能問題,就非常重要了。通過分布式追蹤+AIOPS,來解決,這是目前很多公司在做的。這是第三階段。 

4.系統穩定性問題。保障服務端穩定,并且要成本低,價值高,目前業内如何解決? 彈性伸縮、全鍊路壓測、混沌工程、分布式追蹤,四個結合一起解決穩定性問題,這是需要開發、測試、運維 跨三個部門/角色 一起做的事情。如果通過一套系統,把這4個都做了,做到一個內建的平台中,達到技術複用,資源複用,人員複用,進而降低解決穩定性問題的技術門檻,減少測試、開發、運維在穩定性建設上的成本,保障系統穩定性,整體提升ROI,這是非常有價值的一件事。這是第四階段。