2009-12-10 28 views
2

首先,我想事先道歉,以防萬一這是一個非常愚蠢的問題。我無法把頭圍住它。ASP.NET中的奇數(慢)行爲

我有一個運行.net 2.0的C#ASP.NET網站。 無論是在本地機器上,還是在生產服務器上,它的運行速度都非常慢。

即使我禁用所有的代碼,它仍然運行緩慢,以服務頁面。

但是,如果它是.ashx,而不是.aspx,它會立即執行;即使它執行相同的事情。

任何想法? 真心感謝!

+0

請注意,有大量的可用內存,並且它與服務器的流量無關 – 2009-12-10 18:00:18

+0

我也使用RedGate ANTS性能分析器進行了測試,沒有任何問題。也許我懷疑某種iis問題? – 2009-12-10 18:03:36

+0

您是否嘗試過在aspx頁面的第一個視圖之後運行配置文件,因爲在部署之後的第一個視圖中您必須擔心編譯時間?因此,加載一次頁面,啓動配置文件,然後再次加載頁面。對你的ashx文件做同樣的事情,以確保你比較蘋果和蘋果。 – 2009-12-10 18:11:35

回答

4

如果您的ashx頁面加載速度比aspx快,則可能與您的應用程序上運行的HttpModules或aspx頁面生命週期自定義代碼有關。

檢查Application_BeginRequest或生命週期中可能寫入文件(日誌)的其他事件是否有任何內容,這些事件可能會通過網絡連接到慢速數據庫或身份驗證授權機構(如AD)比平時處理。

逐個禁用web.config中的所有HttpModules並進行測試。請檢查this great article以獲取更多信息

+1

即將發佈該文章由奧馬爾! – ram 2009-12-10 21:29:32

+0

我已經完全禁用了_BeginRequest,實際上全局的.asax並沒有區別。我正在查看httpModules文章 - 謝謝! – 2009-12-11 06:24:58

+0

我不知道這是否真的是答案,但我給你的複選標記(至少現在)因爲這篇文章是天賜之物。 – 2009-12-11 06:39:31

1

您的.aspx頁面是否定義爲母版頁面的內容頁面?也許主人正在執行邏輯。

+0

是的,我禁用了母版頁,並執行了沒有母版頁的頁面。這給出了一個更快的結果,甚至一半,但又慢又慢。 也許就像在15秒之前,甚至開始返回瀏覽器的響應。 – 2009-12-10 18:02:11

+0

螞蟻探查器似乎總是移動到代碼的NATIVE部分。 HTMLWriter等 – 2009-12-10 18:04:34

0

inbuild開發服務器和你的iis服務器有什麼不同嗎?

+0

一個是64bit iis7,另一個是32bit iis6 兩者都存在問題。 – 2009-12-10 18:12:23

1

您是否嘗試過在本地服務器上創建新的快速網站來測試速度?嘗試創建一個快速的asp.net網站並在本地服務器上測試它。如果這個新網站速度很快,那麼您可能會在您現有的網站中發現一些您不瞭解的內容。

0

它可能是一個緩慢的JavaScript? Ajax請求?是不是asjx和aspx做同樣的事情?