業務場景:mysql
也測的業務,如上圖,經過捕獲業務的涉及的接口以下:sql
查詢接口耗時大於7s,已是很是的慢性能
經驗提示:測試
通常接口響應時間慢的問題,最簡單的方式就是監控接口相關的sql是否存在問題優化
開啓mysql的慢查詢監控:3d
這兩個sql加起來,大體等於接口的響應時間,證實問題猜的沒錯,問題就是這兩個sql查詢慢致使的問題7s左右blog
驗證sql是否有問題:索引
查看這個表的執行計劃:接口
發現d表走了全表掃描,直接查詢60多萬的數據,確定會很慢table
因爲d表已經存在orgId存在索引,考慮給o表添加索引
ALTER table t_debt_overview ADD INDEX IDX_orgId(`orgId`);
如今掃描的行數減小了,只掃描必要的4999行
另外的sql問題也解決了
不用壓測,這個性能問題就能夠解決
總結:因此在性能測試的過程當中,不必定非要執行壓測才能發現性能問題,通常在性能壓測前,簡單的執行一下業務,看看是否存在耗時比較長的業務,提早優化,提升壓測的效率