偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

VS2010分布式和異構(gòu)應(yīng)用程序的負(fù)載測試(上)

原創(chuàng)
開發(fā) 后端 分布式
本文將介紹的是Visual Studio 2010分布式和異構(gòu)應(yīng)用程序的負(fù)載測試,包括具體的數(shù)值等內(nèi)容。

【51CTO獨(dú)家特稿】Visual Studio 2010已經(jīng)來臨了,看起來相當(dāng)不錯。微軟給其性能管理方案(比如dynatrace)添加了新的界面,用來擴(kuò)展網(wǎng)絡(luò)測試以及負(fù)載測試的能力(請查看Ed Glas的日志,里面介紹了VSTS Load Testing中有哪些內(nèi)容),以超越.NET的開發(fā)環(huán)境,并且比負(fù)載測試報告更能深層次的告訴你關(guān)于被測試應(yīng)用程序的性能。51CTO開發(fā)頻道向您推薦《VS2010分布式和異構(gòu)應(yīng)用程序的負(fù)載測試(下)

但是,在我們探索通過擴(kuò)展Visual Studio能做什么之前,讓我們看看沒擴(kuò)展時我們能得到哪些東西:

Visual Studio 2010的標(biāo)準(zhǔn)負(fù)載測試報告

Visual Studio 2010運(yùn)行負(fù)載測試是為了收集各種各樣的信息。這些信息包括執(zhí)行要求的反應(yīng)時間、被測應(yīng)用程序基礎(chǔ)設(shè)施(比如CPU,內(nèi)存,I/O, …)的性能計數(shù)器,以及你的負(fù)載測試基礎(chǔ)設(shè)施(負(fù)載控制器及代理)的健康程度。我運(yùn)行了一個4層(2個JVM, 2個 CLR)的網(wǎng)絡(luò)應(yīng)用程序。4個層通過SOAP Web Services (Axis->ASMX)進(jìn)行交流。這個前端網(wǎng)頁應(yīng)用程序是用Java Servlets實(shí)現(xiàn)的,在15分鐘的測試中負(fù)載不斷增加。測試分為多個不同的事務(wù)處理,比如:Home Page、Search、Login、BuyDirect等…---當(dāng)運(yùn)行測試的時候,我也同時監(jiān)視了所有相關(guān)應(yīng)用程序服務(wù)器以及負(fù)載測試基礎(chǔ)設(shè)施的性能計數(shù)器。Visual Studio 2010 允許我通過可配置的曲線圖來監(jiān)視負(fù)載測試的當(dāng)前狀態(tài),具體曲線圖如下所示:

 

測試曲線

Visual Studio負(fù)載測試曲線圖

該圖顯示,隨著用戶負(fù)載的增加,我的事務(wù)(不是全部)處理的反應(yīng)時間也在增加。圖中還顯示出應(yīng)用程序服務(wù)器上的CPU使用率出現(xiàn)了問題(同時有差不多20個用戶時,CPU的使用率就會超過80%)。在負(fù)載測試的最后,會有一個總結(jié)報告,描述了對于這個應(yīng)用程序執(zhí)行了哪些負(fù)載---發(fā)生了哪些錯誤以及哪些頁反應(yīng)最慢:

 

負(fù)載測試總結(jié)報告

負(fù)載測試總結(jié)報告

把報告切換到表格視圖,會有一個單個結(jié)果特征的詳細(xì)分類,比如Transactions、Pages、 Errors(事務(wù)處理,頁,錯誤,)等等:

 

Visual Studio負(fù)載測試匯總表格

Visual Studio負(fù)載測試匯總表格

從表格試圖中我們可以得到以下結(jié)論:

 553頁的請求超過了我的每頁200ms規(guī)則

 

 553頁是屬于menu.do, netpay.do 以及 userlogin.do(當(dāng)你查看單個錯誤請求的時候,你就可以看到這個)

 

 該LastMinute事務(wù)處理是目前最慢的,平均反應(yīng)時間1.41秒,最大反應(yīng)時間為5.64秒。

 

我們不知道的是這些事務(wù)處理為什么這么慢:性能計數(shù)器表明CPU是一個潛在的問題,但是它沒有告訴我們,是什么造成了CPU負(fù)載增大,這個問題是否能被解決或者說我們是否已經(jīng)達(dá)到了系統(tǒng)性能的上限。

dynaTrace捕獲的Visual Studio 2010負(fù)載測試執(zhí)行情況報告

dynaTrace用戶可以從dynaTrace Community Portal(dynaTrace社區(qū)門戶)下載這個Visual Studio 2010插件。這個程序包里含有一個Visual Studio外接程序以及一個Visual Studio測試插件庫,擴(kuò)展了其網(wǎng)絡(luò)測試以及負(fù)載測試的能力。我們也提供Automatic Session Analysis(自動會話分析插件),能夠幫忙分析從較長時間的負(fù)載測試中捕獲的數(shù)據(jù)。

 

在我的4層應(yīng)用程序中進(jìn)行負(fù)載測試時,我使用的是dynaTrace Test Center Edition(測試中心版)。這個Visual Studio 2010插件確保了dynaTrace能夠自動捕獲所有dynaTrace會話中的服務(wù)器端事務(wù)處理(PurePath的)。它還確保那些跟Web Test腳本中名字相同的事務(wù)處理都會傳遞到dynaTrace。

在運(yùn)行負(fù)載測試過程中,我創(chuàng)建的Load Testing Performance Dashboard(負(fù)載測試性能儀表板)使得我可以觀察傳入的請求以及每個JVM和CLR中的內(nèi)存使用情況。我能看到我的應(yīng)用程序中是哪些層次對系統(tǒng)的性能產(chǎn)生了影響--- ADO.NET, ASP.NET, SharePoint, Servlets, JDBC, Web Services, RMI, .NET Remoting等等層---dynaTrace會自動監(jiān)測這些層,而且還幫助我理解應(yīng)用程序中實(shí)際上是哪些部件/層次消耗了大部分的執(zhí)行時間以及逐漸增加的負(fù)載對這些部件的影響分別是怎樣的。除此以外,我還能觀察到執(zhí)行的SQL語句數(shù)量(不管是通過Java還是.NET),以及發(fā)生的異常情況的數(shù)量:

 dynaTrace負(fù)載測試性能儀表板

dynaTrace負(fù)載測試性能儀表板

儀表板左上角的圖表中顯示的是單個事務(wù)處理的反應(yīng)時間,其下方的圖表是累積的事務(wù)處理數(shù)量。這些是進(jìn)入的請求數(shù)量,從中我們很容易獲悉VS2010是怎樣在測試中增加負(fù)載的。

儀表板右上角的圖表是兩個JVM的內(nèi)存使用情況,其下方的圖表是兩個CLR的內(nèi)存使用情況(在我的第二個JVM中似乎存在著一個內(nèi)存泄漏,而且還有一個非常“安靜的”CLR)。

儀表板左下角的圖表顯示的是我的應(yīng)用程序隨著逐漸負(fù)載的增加有什么變化。我能看到我的應(yīng)用程序表現(xiàn)一直都還不錯,直到一個特定的用戶負(fù)載得出現(xiàn)。但是,Web Service Layer(網(wǎng)絡(luò)服務(wù)層)(黑灰色)的性能表現(xiàn)開始比其他所有有關(guān)的應(yīng)用層差很多。

儀表板右下角的數(shù)據(jù)庫語句數(shù)量以及異常情況數(shù)量告訴我,這些計數(shù)器隨著負(fù)載的增加而線性的增長。但是,似乎我們有相當(dāng)多的數(shù)據(jù)庫查詢(高達(dá)350/second),還有非常多的異常情況值得調(diào)查。

在負(fù)載測試完成之后,我得到的第一個報告顯示出速度最慢的網(wǎng)絡(luò)事務(wù)處理,它們按照Visual Studio中的名字進(jìn)行歸類:

  dynaTrace每個網(wǎng)絡(luò)處理的性能報告

dynaTrace每個網(wǎng)絡(luò)處理的性能報告

從上圖中,我可以看到LastMinute處理的確是最慢的處理,反應(yīng)時間5.6秒是最大的。從這個報告中,我們能夠?qū)⒏呒壥聞?wù)處理分解成應(yīng)用層、數(shù)據(jù)庫調(diào)用以及方法調(diào)用,從而進(jìn)行細(xì)致的分析,這是該報告的最大優(yōu)點(diǎn)所在。根據(jù)這個分類我們能夠立即看出對于Last Minute處理來說,Java Web Service是最高的性能消耗者。我們也能看到448個對此事務(wù)處理的請求包含有幾千個數(shù)據(jù)庫查詢,我們還能看到是哪些Java以及.NET方法占據(jù)了系統(tǒng)的執(zhí)行時間。點(diǎn)擊Slowest Page會打開PurePath Dashlet,它顯示出每個已執(zhí)行的事務(wù)處理。如果按持續(xù)時間進(jìn)行排列,還可以顯示出各個處理的執(zhí)行時間有著巨大的差異。PurePath Hot Spot視圖讓人很簡單的就能揪出在最慢的事務(wù)處理中最消耗性能的方法:

運(yùn)行最慢的事務(wù)處理中,不同的PurePath之間差別很大

 運(yùn)行最慢的事務(wù)處理中,不同的PurePath之間差別很大

有了PurePath Comparison功能,我可以進(jìn)一步找出兩個執(zhí)行時間差別很大的事務(wù)處理有什么不同:

 比較兩個事務(wù)處理,并鑒別差異

通過可視圖表以及PurePath Comparison Tree,我們可以看到時間上的區(qū)別主要是因?yàn)樵谠撉闆r下進(jìn)行SpecialOffer和所有調(diào)用構(gòu)成的。底部的表格列出了這兩個PurePath之間所有時間和結(jié)構(gòu)的不同之處,讓我們更加深入的了解還有沒有其他方面的差別。

原文標(biāo)題:VS2010 Load Testing for Distributed and Heterogeneous Applications powered by dynaTrace

【編輯推薦】

  1. Visual Studio 2010將再度擁抱UML
  2. 圖解Visual Studio 2010中的UML建模功能
  3. Visual Studio 2010及.Net 4新功能一覽
  4. Visual Studio 2010安裝初體驗(yàn)
  5. Visual Studio 2010中調(diào)試.NET應(yīng)用程序詳解

 

責(zé)任編輯:彭凡 來源: 51CTO
相關(guān)推薦

2010-04-27 09:11:23

VS2010

2013-04-01 09:59:59

VS2010

2021-08-30 20:19:55

應(yīng)用程序

2009-12-11 15:13:15

VS 2010驅(qū)動

2010-06-29 14:49:12

Typemock IsVS2010

2009-12-18 10:24:28

VS 2010代碼

2009-12-02 14:05:17

VS2010程序

2010-12-09 17:30:10

2023-10-30 09:27:41

Docker程序

2019-07-17 22:23:01

分布式系統(tǒng)負(fù)載均衡架構(gòu)

2022-03-15 19:19:04

分布式PostgreSQL集群

2019-10-08 11:57:04

Gartner科技技術(shù)

2009-12-15 11:16:39

VS2010開發(fā)程序

2009-12-11 14:21:55

VS2010程序

2015-08-04 15:47:39

2009-12-01 20:10:59

VS2010軟件

2009-12-02 14:19:09

VS 2010產(chǎn)品

2022-03-14 19:40:40

PostgreSQL多租戶應(yīng)用程序Citus

2009-11-11 11:29:37

VS2010 Auto

2023-11-16 17:27:44

Java分布式應(yīng)用程序
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號