2011-04-13 282 views
0

我的方法執行大量的異步SQL請求,我經常會遇到連接超時異常。除了增加連接超時值和正確的索引之外,還能做些什麼?我的意思是數據庫部分,而不是代碼部分。無法更改代碼部分。此外,應用程序在不同的服務器上運行良好,但只有我在我的電腦和本地MS SQL Server 2008 R2數據庫(它也位於同一臺PC上)上遇到超時異常。所以我認爲這顯然是性能問題,因爲連接超時已經設置爲3分鐘。也許我可以在服務器上改變一些東西?也許有一些simultanious請求約束?我的每個請求都需要3分鐘的時間,但其中大約有26000個請求異步運行,只有我本地PC和本地數據庫遇到這些問題。 我已經運行了進程監視器,並且看到當我的代碼啓動時,SQL Server最終消耗了200 MB的RAM,並佔用了大約一半的CPU處理時間。但是我仍然有1 GB的RAM空間,所以這不是內存問題。連接超時

+0

您是否遇到連接超時或命令超時?您可能會打開太多與SQL Server的連接? – 2011-04-13 13:59:22

+0

@Chris Diver我遇到連接超時。是的,我打開了太多的連接,但我無法改變這一點。 – 2011-04-13 14:37:52

+0

更新:我有一個命令超時設置,而不是連接超時。我會嘗試設置連接超時。 – 2011-04-13 16:42:33

回答

0

我認爲連接的數量可能是原因。確保正確關閉連接或嘗試減少連接數量。您也可以使用管道,這將克服常規連接的限制。