我有一個網絡服務放緩。我的(網絡)服務在gsoap &託管C++。這不是IIS/apache託管,而是說xml。 我的客戶端在.NET 服務計算時間很短(< 0.1s準備回覆)。我希望這項服務能夠流暢,快速並具有良好的可用性。 我有大約100個客戶,響應時間是1s強制性的。 客戶每分鐘有大約1個請求。 客戶正在通過tcp open port test檢查Web服務狀態。 因此,爲了避免可能的擁塞,我將gSoap KeepAlive設置爲false。 直到有一切運行良好:我可以看到TCPView(sysinternals)中的連接網絡服務放緩
新的特殊同步程序現在在循環中調用服務。 負載較高,但所有內容都在30秒內處理完畢。 使用sysinternals TCPView,我看到大約1千個連接在TIME_WAIT中。 他們減慢了服務速度,現在服務需要幾秒鐘才能回覆。
難道我需要重置SoapHttpClientProtocol連接嗎? 有人有TIME_WAIT幽靈與循環中的Web服務調用?
我同意。我希望服務器端的KeepAlive = false,但在客戶端的 ,.NET似乎更喜歡回收默認情況下。 我發現這個解決方案: http://yakkowarner.blogspot.com/2008/11/calling-web-service-in-loop.html 但它看起來很重。我正在嘗試那個: http://forums.asp.net/t/1003135.aspx – wiwulo 2009-02-05 08:44:13