並行 HTTP 請求被 Windows 註冊表阻止
您嘗試在應用程式中同時執行多個 HTTP 請求,但效能受到限制。透過調查潛在的瓶頸,您發現 Windows 可能會對並發請求施加限制。
為了解決此問題,您依照建議修改了與連線限制相關的登錄值。然而,儘管進行了調整並重新啟動計算機,您的應用程式仍然僅使用兩個 TCP 連接運行,限制了其吞吐量。
問題出現了:為什麼註冊表修改不起作用?
您引用的部落格文章中提供的資訊並不完全準確。提到的登錄項目 MaxConnectionsPerServer 和 MaxConnectionsPer1_0Server, 與允許的並發連線數沒有直接關係。相反,這些鍵控制可以對特定伺服器保持開啟的最大連線數。
要控制最大並發連線數,您應該使用 ServicePointManager.DefaultConnectionLimit 屬性。此屬性可讓您指定 ServicePoint 物件可以擁有的最大連線數。預設情況下,此限制設定為 2。
要增加連線限制,只需將 DefaultConnectionLimit 屬性設定為所需的值。以下是一個範例:
ServicePointManager.DefaultConnectionLimit = 20;
此修改將提高透過您的應用程式發出的所有 HTTP 請求的並發連線限制,使您能夠實現所需的吞吐量。
以上是為什麼我的登錄機碼修改沒有增加 Windows 中的平行 HTTP 請求?的詳細內容。更多資訊請關注PHP中文網其他相關文章!