2009-11-18 29 views
0

兩臺運行ASP.NET的Win2003服務器共享相同的SQL Server,一臺是DEV另一臺是LIVE。它們都是彼此的克隆,一個是發展箱。開發箱會很慢,但我注意到它甚至發生在404響應中。當我瀏覽一個帶有任何一個域的假URL以獲得一個404時,開發框是1.4秒,其他框是200ms。所以這不是最近的代碼更改。是否有一些IIS配置或web.config設置會導致這種情況?什麼會導致1秒的延遲添加到DEV上的所有我的POST但不是現場?

(我做了一個traceroute命令都與原來相等)

回答

1

這可能是很多事情:

  • 的DEV機解決或試圖解決客戶的DNS名稱。
  • DEV機器必須爲數據庫機器執行DNS查詢。
  • DEV機器未使用連接池(檢查連接字符串)。
  • 兩臺機器的KeepAlive設置是否相同?
  • 是否有任何AD身份驗證?這可能會從DEV更慢嗎?
  • 如果你在DEV本地執行POST,該怎麼辦?它仍然很慢嗎?
+0

是的,當我從DEV瀏覽到DEV時,它仍然一樣慢。 – BigOmega 2009-11-18 01:05:28

+0

您可以在DEV機器上安裝wireshark(http://www.wireshark.org/download.html),並在執行POST時捕獲所有進出該機器的數據包? – Gonzalo 2009-11-18 01:55:18

0

您是否在實際的開發控制檯上?

如果是這樣,是Firefox還是WebKit IPv6問題?我們中的許多開發者在我們自己的盒子上都可以使用IPv6,如果沒有完全設置,一些瀏覽器的速度會很慢。嘗試使用IE瀏覽器,看看你的開發箱是否有快速響應。

當我在Chrome中訪問本地應用程序時,頁面顯示需要幾秒鐘的時間。直到我在其配置中禁用IPv6之前,與Firefox一樣。

0

因爲即使是404 Not Found也很慢,也就是說它可能與您的數據庫無關,除非您正在從Global.asax或HttpModule進行某種記錄或其他數據庫訪問。

你看了Windows錯誤日誌,看看是否有任何錯誤報告?

如果Ping和Tracert從客戶到兩個服務器看起來OK,如果它看起來也從Web服務器到數據庫OK,那麼你可能看的東西,如:

  1. 硬件問題(古怪網絡電纜是常見的罪魁禍首)。也許嘗試交換你的實時和開發機器,看看問題是否停留在同一個硬件上。隨着控制器重試,Flakey磁盤也會導致緩慢。
  2. 與IIS相關的配置錯誤。如果網站正常運行並且速度很慢,那麼您可以查看後端日誌記錄,跟蹤等,如果有的話。

您可能還會考慮升級到Win 2008. IIS 7有一些改進得多的調試工具,其中包括失敗的請求跟蹤等。

相關問題