我在寫一個將在Windows Server 2008(IIS7)上運行的ASP.NET Web應用程序。在ASP.NET/IIS7中可以創建多少個併發的出站HttpWebRequest調用?
每個頁面的代碼隱藏需要使用的HttpWebRequest使至少一個同步Web服務調用外部服務器和GET。
我的問題 - 是否有任何限制HttpWebRequest的電話,我可以讓出站的數量? (假設我打電話服務器有沒有限制)
有彙集這些連接,讓應用變得更好任何手段?網絡花園配置會有幫助嗎?
我在寫一個將在Windows Server 2008(IIS7)上運行的ASP.NET Web應用程序。在ASP.NET/IIS7中可以創建多少個併發的出站HttpWebRequest調用?
每個頁面的代碼隱藏需要使用的HttpWebRequest使至少一個同步Web服務調用外部服務器和GET。
我的問題 - 是否有任何限制HttpWebRequest的電話,我可以讓出站的數量? (假設我打電話服務器有沒有限制)
有彙集這些連接,讓應用變得更好任何手段?網絡花園配置會有幫助嗎?
缺省情況下,HTTP/1.1服務器限於兩個連接和HTTP/1.0服務器僅限於四個連接。因此,如果您嘗試向HTTP/1.1服務器發出兩個以上未完成的請求,例如,您的ASP.NEt應用程序將出現嚴重的吞吐量問題。
您需要增加每個服務器或全局的連接限制。
對於如全球:
ServicePointManager.DefaultConnectionLimit = 10; // allow 10 outstanding connections
希望這有助於。
我認爲你的問題應該面向網絡配置。
我想說,如果每個頁面都依賴於一個同步外部呼叫,那麼您就會遇到麻煩。如果您獲得外部Web服務掛起的N個請求,該怎麼辦?你將會遇到一些問題,你無能爲力。
您是否考慮過帶回調的異步調用?
將異步從ASPX頁面的代碼隱藏調用時調用工作? – frankadelic
這是一個加載的問題,但我添加了一個鏈接,該鏈接有一個應該讓你去的例子。 –
這真的很有幫助。我想補充說,通過web.config來設置,你可以添加地址到system.net /連接管理。 – Jacob