性能調整進行順序

(1)肯定問題數據庫

根據測試結果,肯定系統是否存在問題,對問題進行正肯定位,重點是發現系統的瓶頸。一般,肯定系統問題從下面幾個方面入手:服務器

  • 應用程序代碼:不少程序的性能問題是寫出來的,所以先作代碼review
  • 數據庫配置:數據庫配置常常會引發整個系統運行緩慢,一些諸如Oracle的大型數據庫,都須要DBA進行正確的參數調整才能投產
  • 操做系統配置:操做系統配置不合理也可能引發系統瓶頸
  • 硬件設置:磁盤速度、內存大小等都是容易引發瓶頸的緣由,所以這些都是分析重點
  • 網絡:網絡負載太重會致使網絡衝突和網絡延遲

(2)肯定緣由網絡

肯定緣由很大程度上靠的是我的經驗,涉及的知識有操做系統、數據庫、網絡、程序開發等併發

  • 問題的影響是什麼,響應時間仍是吞吐量,或者其餘問題
  • 是大多數用戶仍是少數用戶遇到了問題?若是是少數用戶,這幾個用戶與其餘用戶的操做有什麼不一樣
  • 系統資源監控的結果是否正常,CPU的使用是否到了極限?I/O狀況如何?
  • 問題是否集中在某一類模塊中?
  • 是客戶端仍是服務器出現問題?
  • 系統硬件配置是否夠用?
  • 是否實際負載超過了系統的負載能力?
  • 是否未對系統進行優化?

經過這些分析以及一些具體系統相關的問題,能夠對系統瓶頸有更深刻的瞭解,進而分析出真正的緣由。性能

(3)肯定調整目標和解決方案測試

在分析出問題的緣由後,首先要肯定調整目標,而後設計解決方案,肯定調整目標的主要做用是明確什麼時候中止調整系統,不然工做將永無盡頭。優化

每一個系統都有不一樣的特色,所以調整目標可能不一樣。例如,下面這些都是系統的調整目標:操作系統

  • 提升系統吞吐量
  • 縮短響應時間
  • 更好的支持併發

設計解決方案的主要依據就是這些調整目標,有了明確的方案和目標,就能夠進行後見面的工做。設計

(4)測試解決方案內存

實施解決方案後,就要對方案進行測試。可使用之前的測試用例來進行測試,驗證系統是否解決了性能問題。測試解決方案儘可能在仿真環境下進行,由於再生產環境下可能帶來破壞,除非充分估計了測試風險,而且準備了充分的補救方案。

(5)分析調整結果

性能調整的最後一步是分析調整結果,若是沒有解決問題,則要重複前面的工做。在測試系統調整方案過程當中,要常常分析所作的工做,例如沒能準肯定位問題或者調整方案不正確,預期目標可能不會達到,儘早發現這些錯誤可使工做早些回到正確的軌道上來。

分析調整結果主要考慮下面問題:

  • 系統調整是否達到或者超出了預約目標?
  • 系統是總體性能獲得了改善,仍是以犧牲某部分性能來解決問題的?
  • 調整是否能夠結束了?

最後,若是達到了預期目標,調整工做就基本結束了。

 

要想作好性能測試,必定不要拘泥於壓力測試、負載測試、強度測試等名詞。應該重點關注如何經過性能測試來發現系統的性能問題,關注系統的性能目標與節約成本。

相關文章
相關標籤/搜索