一、應用性能問題
在我們過往的測試及生產問題的分析中,常常可以發現應用執行數據庫操作導致出現性能問題的情況。而這些情況中最常見的原因是SQL執行時,索引未能恰當的使用,例如未建索引、SQL條件沒有利用索引、索引失效等。這些問題往往佔據了性能問題的60%~80%原因。
爲了應用在性能方面能安全上線,通常需要專業的性能測試及分析人員通過冗長的測試過程來進行保障,對測試人員、數據環境、測試時間等多個方面均提出了較高的要求。而組織內部往往缺乏這樣的專業人員,同時互聯網模式下高速的系統迭代上線也很難爲專門的性能測試開展提供充足的時間資源。
爲了解決這些問題,我們提出了AppTrace這套系統的設計。期望以簡單、自動化、高效的手段達成在測試階段把應用性能的這60%~80%的問題都解決掉。
二、AppTrace目標
- 發現應用性能問題中最主要的原因之一:慢SQL
- 以簡便的手段獲取應用可能存在的SQL性能問題點
- 降低測試人員發現慢SQL的技術難度
- 使應用SQL的性能偵測覆蓋率達到近乎100%
- 偵測分析結果與生產真實情況接近
三、目標實現基本過程
1)功能測試和接口測試時,AppTrace抓取測試執行過程中的所有SQL。通過功能和接口測試實現對應用功能的全量覆蓋,使得應用中的SQL幾乎都會被抓取到。
原文鏈接:【https://www.infoq.cn/article/fPTmOf8MdZL89zGARIWG】。未經作者許可,禁止轉載。