Android 云计算 Ubuntu centos apache 开源 google Windows 微软 wordpress Python nginx 程序员 linux php Firefox mysql 编程 java shell

《精通軟件性能測試與LoadRunner最佳實戰》—第2章2.10節系統性能調優

2.10 系統性能調優
精通軟件性能測試與LoadRunner最佳實戰
性能測試分析人員經過對結果的分析以後,有可能提出系統存在性能瓶頸。這時相關開發人員、數據庫管理員、系統管理員、網絡管理員等就需要根據性能測試分析人員提出的意見同性能分析人員共同分析確定更細節的內容,相關人員對系統進行調整以後,性能測試人員繼續進行第二輪、第三輪……的測試,與以前的測試結果進行對比,從而確定經過調整以後系統的性能是否有提升。有一點需要提醒大家,就是在進行性能調整的時候,最好一次只調整一項內容或者一類內容,避免一次調整多項內容而引起性能提高卻不知道是由於調整哪項關鍵指標而改善性能的。進行系統的調優過程中好的策略是按照由易到難的順序對系統性能進行調優。系統調優由易到難的先後順序如下:

(1)硬件問題;

(2)網絡問題;

(3)應用服務器、數據庫等配置問題;

(4)源代碼、數據庫腳本問題;

(5)系統構架問題。

硬件發生問題是最顯而易見的,如果CPU不能滿足復雜的數學邏輯運算,可以考慮更換CPU,如果硬盤容量很小,承受不了很多的數據可以考慮更換高速、大容量硬盤等。如果網絡帶寬不夠,可以考慮對網絡進行升級和改造,將網絡更換成高速網絡。還可以將系統應用與平時公司日常應用進行隔離等方式,達到提高網絡傳輸速率的目的。很多情況下,系統性能不是十分理想的一個重要原因就是,沒有對應用服務器、數據庫等軟件進行調優和設置引起的,如對Tomcat系統調整堆內存和擴展內存的大小,數據庫引入連接池技術等。源代碼、數據庫腳本在上述調整無效的情況下,您可以選擇的一種調優方式,但是由於涉及對源代碼的改變有可能會引入缺陷,所以在調優以後,不僅需要性能測試,還要對功能進行驗證,以驗證是否正確。這種方式需要通過對數據庫建立適當的索引,以及運用簡單的語句替代復雜的語句,從而達到提高SQL語句運行效率的作用,還可以在編碼過程中選擇好的算法,減少響應時間,引入緩存等技術。最後,在上述嘗試都不見效的情況下,就需要考慮現行的構架是否合適,選擇效率高的構架,但由於構架的改動比較大,所以應該慎重對待。

延伸阅读

    评论