E. 長時間高效服務的能力
4.大型票務系統性能測試方法
4.1 前段性能測試方法
前端性能主要的評測工具有Google的Page Speed和Yahoo的YSlow。Google開發團隊針對SteveSounder網頁性能最優方法,成功地推出一款基于 Firefox/Firebug的開發類插件Page Speed,旨在幫助開發人員分析網站性能存在的主要問題,并有針對性地提出優化改進意見。它支持的操作系統為Linux、Mac、Windows。在此之前, Google內部已經廣泛使用PageSpeed優化網頁前端性能。YSlow是有雅虎公司開發的免費前端性能檢測工具。YSlow通過檢測網頁上的所有組件,包括JavaScript動態創建的組件,分析網頁的前端性能。同時,YSlow依據前端性能的分析結果提出改進建議。
在應用上述兩款任意一款給你工具進行測試后,將測試結果對應的填入下面的前段性能評測記錄表中。
表1 前段性能評測記錄表
其中,優化項所有內容必須滿足,附加項可以不滿足,在評測結果中Y代表滿足、N代表不滿足、Null代表無優化項相關技術。評測結果共分為A、B、C、D、E和U六個級別。具體對應關系如下表所示:
表2 評級標準
4.2 后端性能測試方法
測試主要采用商業級別的性能測試工具進行測試,如HP Loadrunner。通過大規模模擬實際用戶的操作行為,測試核心售票系統中注冊、瀏覽、座位選擇、支付等關鍵業務的響應時間和服務器實時處理能力,重點關注CPU、內存、I/O等信息,為操作系統、中間件和數據庫以及服務器的性能優化和調整提供數據依據。
通常情況下,數據中心中用于支撐售票業務的服務器多達幾百臺,通過軟件在測試中進行監控更容易實現,如UC Berkeley的開源集群監視軟件Ganglia。Ganglia的核心包含gmond、gmetad以及一個Web前端,通過自動解析linux操作系統proc目錄下的文件來獲取操作系統的主要性能指標。Ganglia帶來的系統負載非常少,幾乎不會影響被監控系統性能。對于中間件和數據庫等基礎軟件,可采用其自帶的監視器或命令來獲取性能指標。
在測試場景設計中,應考慮準確模擬混合業務的并發操作,以及過載訪問的情況,可借鑒下表中的思路進行測試:
表3后端性能測試場景
通過測試考察運行環境的抗壓能力,在成本和風險可接受范圍內對整個運行環境進行合理優化,提高核心售票系統的處理能力??偟膩碚f,高效的核心售票系統在上線前達到以下要求:
A. 核心業務模塊中無明顯效率低下的模塊
B. 多個數據中心間實現了良好的負載均衡,整個運行環境中不存在明顯的服務器資源消耗過度的情況
C. 整個運行環境的網絡承受負載的能力良好,各銀行支付網點進行了合理的組網規劃,網站與支付系統的流量實現良好分離
D. 在正常和過載情況下,系統的定單數量/小時指標在合理范圍內,代理服務器、交易服務器以及數據庫服務器的資源消耗合理
5.總結
通過分析大型票務系統的訪問特點和規律,提出了大型票務系統的性能測試策略和方法,該方法經具備普遍的合理性和較強的操作性,但是該方法還有待在更多大型票務系統性能測試中進行應用和完善。