2013-09-28 33 views
0

我在客戶端使用WebRequest來使用Internet上的Web服務。每個請求都在一個單獨的線程中觸發。WebRequest在Windows服務中超時

如果在IIS中託管客戶端,它工作得很好。但是,如果客戶端託管在Windows服務中,則大多數請求都會超時。

當我試圖調試使用招的問題,工作的WebRequest以及所有流量通過127.0.0.1:8888

沒有提琴手去的時候,流量直接通過一個隨機端口進入互聯網,且超時問題再次出現。

windows服務在本地系統帳戶下運行。

如果客戶端在不使用代理的情況下在windows服務中,爲什麼我會超時?

更新:我的原始問題不清楚。這些請求是同時發生的(或者間隔很短)。這與ServicePoint類中的連接限制有關。默認情況下,只有2個連接被允許到同一個外部目的地。如果目的地是本地,則限制將是int.Max值。這就是爲什麼小提琴手可以用代理魔法修復問題的原因。所以我手動將DefaultConnectionLimit設置爲100,並且請求在線。

Adjusting HttpWebRequest Connection Timeout in C#

回答