0

我正在尋找一個「具體」的方法來通過個體化的Web應用程序提供的服務的性能瓶頸。我正在尋找一種全面的方法,包括測試計算機網絡,數據庫和Web應用程序。 假設您位於一個Web應用程序前面,該應用程序允許您在登錄公司網絡後下載PDF文件。 您可以通過瀏覽器訪問應用程序。
最終用戶的要求是Web應用程序必須允許在不超過1分鐘內完成下載PDF文件(大小達到5MB)。 一些技術細節: - 應用程序由數據庫,文檔管理系統(例如,露天)和Java代碼片斷。 - 一個用戶通過該應用提供的用戶名和密碼進行身份驗證他/她,就反過來應用程序發送他們的LDAP服務器(LDAP服務器部署另一臺物理服務器上)。 Java serlet執行此工作並額外查詢數據庫以瞭解用戶的角色(用戶可以是管理員,讀者,作者)。 - 經過認證的用戶對搜索頁面的訪問,搜索文檔後將下載文件。搜索以這種方式工作:用戶填寫一些字段(例如,文檔的名稱),該字段被髮送到文檔管理系統,文檔管理系統執行文件的實際搜索並將結果返回給應用程序。 當用戶單擊下載按鈕時,應用程序將從文檔管理系統中檢索文檔。性能測試方法

基礎網絡應該是1GB的Eth一些路由器/網橋和負載均衡,我們有網絡拓撲結構的廣泛知識。

我的問題是:如果存在性能瓶頸(在網絡中,在Web應用程序中,例如,糟糕的編碼),違反了先前的要求(1秒的下載時間),我們如何發現它?我們應該從哪個元素開始?例如試圖理解網絡性能,然後是文檔管理系統,最後是整個系統(應用程序,網絡,數據庫)。我們應該如何逐步增加下載請求的數量?

我在尋找一種方法,我已經閱讀

http://www.agileload.com/performance-testing/performance-testing-methodology/test-methodology

http://msdn.microsoft.com/en-us/library/bb924375.aspx

What performance testing methodology are you using for your webapps?

所有這些包含不錯的建議,但我想用一個更實際的方法參考Web應用程序的測試。 預先感謝您

回答

0

它是一分鐘或一個5MB文件中的一個秒?你可以張貼關於各個部分如何連接的圖表 ?

有一種方法可以確定網絡延遲和應用程序處理如何對總響應時間做出貢獻。

它需要檢測組成完整系統的瀏覽器和其他組件。即用JavaScript,Java,C/C++,Perl,Python等編寫代碼並將其嵌入到每個應用程序組件中,以便組件可以將事件報告給中央收集器。

如果檢測不能輕易添加到組件中,那麼另一種替代方法是在組件之間插入事件收集代理,然後讓它們將事件報告給中央收集器。您可以通過在路徑中使用或不使用代理運行少量測試來確定並分析由於代理引起的延遲。

一旦事件到達中央收集器,人們就可以很好地瞭解響應時間是如何構成的。