2011-05-31 82 views
1

我們有一個ASP .Net應用程序(爲3.5 SP1構建),在Visual Studio 2008中使用「All CPU's」選項進行編譯。它目前託管在Windows 2003(32位)IIS6環境(虛擬服務器)中,並連接到SQL 2008(64位)服務器。目前的應用服務器運行x2至強E5520 CPU @ 2.27GHz和4GM RAM。.Net應用程序在IIS7/Server 2008中運行緩慢64位

使用此當前設置,應用程序的執行效果與它應該一樣。最近,我安裝了一臺運行Windows Server 2008 R2(64位)和IIS7的新虛擬服務器,運行x2至強E5530 CPU,運行@ 2.4GHz,帶有6GB RAM。我已經在這臺仍然連接到同一臺數據庫服務器的新服務器上安裝了我們現有的.Net應用程序。

不幸的是,由於我的理解超出我們的理解,我們的應用程序在這臺新服務器上的性能很差(當查看規格時應該比舊服務器運行得更好)?頁面似乎需要加載兩次(可能需要更長的時間來查詢數據庫..?)等..

任何人都可以提供任何洞察力,可能表明爲什麼這可能是?我們的網絡人員聲稱新服務器的設置與舊服務器完全相同,所以當應用程序服務器無法在相同端口上訪問sql服務器時,我看不到這是一個問題。 32位服務器..一切非常奇怪:■

乾杯

格雷格

回答

3

第一的原則,從不相信任何人,從來沒有假設任何事情。

您需要測試服務器。您需要在服務器上執行一些負載測試以確保服務器正常運行。通過網絡嘗試一些大型文件複製。嘗試通過網絡打開大量文件等等。運行一些CPU消耗操作。將服務器推到極限。確保預計服務器的性能。

如果這沒有揭示任何問題,那麼你需要儀器。你需要找出瓶頸在哪裏。它是否在進行數據庫調用?您可以通過放置一些日誌代碼和測量執行查詢的時間來輕鬆測量。

您可以打開頁面輸出跟蹤並查看頁面中的哪個功能花費了多少時間。有時會顯示有用的信息。

看看這篇文章。它在建立生產環境和測試它們方面有一些很好的提示。 http://www.codeproject.com/KB/aspnet/ProdArch.aspx

相關問題