性能測試之全鏈路壓測優化思路,一般可以從3個層面去進行優化:
優化單個系統性能
就算不進行全鏈路壓測,單個系統的性能優化也是要考慮的問題,對單個系統的優化,其實方法有很多,但是萬變不離其宗,就是在壓測過程中監控系統各項指標,從中挑出慢交易,針對慢交易進行優化,對于聯機系統大部分都是因為各種IO問題導致性能上不去??梢愿鶕鞣N介質IO訪問的性能來優化,內存緩存>文件>數據庫>網絡,基本上通過緩存和異步處理這兩顆銀彈就可以解決80%的性能問題。
當鏈路上的單個系統性能提升了,整體的全鏈路性能自然就提升了。
優化關聯路徑
但是在優化的過程中,我們常常發現絕大部分系統性能都很高,但是總的TPS還是很低,這就需要去根據監控了解下目前整個鏈路上的性能瓶頸到底在哪?通過全鏈路監控可以發現整個業務流程在哪個節點耗時較長,那么這個耗時較長的節點就是我們需要優化的地方,只要這些關鍵路徑的性能提升上來以后整體的性能就上來了。關鍵節點的優化方式和單系統優化思路一致。
優化業務流程
很多開發人員都會將優化思路集中在技術層面,但是很多時候從業務流程上進行優化效果可能更好,而且提升的效果會非常明顯。業務層面的優化主要是從分散IO的角度去考慮,將實際業務場景中的用戶請求進行分散,例如常見的大秒系統、驗證碼系統、游戲工具等都是為了進行業務層面的IO分散來保證。這類業務流程的優化首先要梳理清楚整個業務流程,包括所有的細節。然后針對每個環節在保證用戶體驗的情況下分散用戶請求,這樣可以較大限度的保證體驗。