1. 程式人生 > >面試篇------效能測試+調優

面試篇------效能測試+調優

記錄下來自己的學習經驗,供各位共勉。
1關於效能測試的種類:

負載測試:loadtesting 針對程式和伺服器資料庫在固定情況下的最大使用者數和併發量的響應時間和資源利用率
壓力測試:stress testing 測試高負載情況下長時間極限狀態下伺服器是否正常工作,最對伺服器的承壓能力
配置測試:configuratingtesting 確定某一配置下的效能測試,獲取不同配置下的效能引數
容量測試:volumetesting針對資料庫的最佳容量測試,主要是側重資料庫
基準測試:benchmarktesting 為後續調優和系統評測提供引數支援,針對整個系統進行
併發測試:concurrencytes排除死鎖或資料錯誤能引數故障,針對程式本身進行測試
容錯測試:測試服務在出現異常情況下的反應。

2關於效能調優涉及的方面和例項:

硬體效能瓶頸:
cpu,記憶體、磁碟io等方面,分為硬體瓶頸,網路瓶頸。(區域網可忽略網路因素)、伺服器作業系統瓶頸,中介軟體(引數配置,資料庫,web伺服器等)瓶頸,應用瓶頸(sql語句、資料庫設計、業務邏輯、演算法等)。
軟體效能瓶頸:一般指的是應用伺服器、web 伺服器等應用軟體,還包括資料庫系統。

例如:中介軟體weblogic 平臺上配置的JDBC連線池的引數設定不合理,造成的瓶頸。
應用程式上的效能瓶頸:

一般指的是開發人員新開發出來的應用程式。

例如,程式架構規劃不合理,程式本身設計有問題(序列處理、請求的處理執行緒不夠),造成系統在大量使用者方位時效能低下而造成的瓶頸。
作業系統上的效能瓶頸:

一般指的是windows、UNIX、Linux等作業系統。

例如,在進行效能測試,出現實體記憶體不足時,虛擬記憶體設定也不合理,虛擬記憶體的交換效率就會大大降低,從而導致行為的響應時間大大增加,這時認為作業系統上出現效能瓶頸。
網路裝置上的效能瓶頸:

一般指的是防火牆、動態負載均衡器、交換機等裝置。

例如,在動態負載均衡器上設定了動態分發負載的機制,當發現某個應用伺服器上的硬體資源已經到達極限時,動態負載均衡器將後續的交易請求傳送到其他負載較輕的應用伺服器上。在測試時發現,動態負載均衡器沒有起到相應的作用,這時可以認為網路瓶頸。



  效能測試出現的原因及其定位十分複雜,這裡只是簡單介紹常見的幾種瓶頸型別和特徵,而效能測試所需要做的就是根據各種情況因素綜合考慮,然後協助開發人員\DBA
\運維人員一起定位效能瓶頸。 ```

這裡寫程式碼片

```
這裡寫程式碼片
這裡寫程式碼片