WebAPI客戶端中
HttpClient
使用:績效分析> WebAPI客戶端應用程序中一個HttpClient
實例的理想壽命是經常討論的主題。該分析闡明了不同方法的性能含義。
可重用性:性能注意事項HttpClient
>
類旨在跨多個API調用重複使用。 像HttpClient
(管理憑據和cookie)和HttpClientHandler
,不必要地重新定位這些組件,從而導致性能降級。
DefaultRequestHeaders
HttpClient
>利用消息處理程序有效
> 對消息處理程序的支持(用於日誌記錄,審計,速率限制等)是另一個關鍵因素。 每個新的
實例都需要重新註冊這些處理程序,在請求中添加開銷並可能丟失狀態信息。
HttpClient
HttpClient
> tcp/ip連接池池和性能
> 處置>實例也關閉了其基礎
,終止了關聯的TCP/IP連接。 反复創建和處置每個請求的對象會導致頻繁的連接建立,從而顯著影響性能,尤其是對於遠程或HTTPS連接。 這否定了連接匯總的好處。
HttpClient
HttpClientHandler
推薦方法:最佳性能的單例模式HttpClient
中使用單個實例,有可能對不同的API使用單獨的實例。這種方法最小化對象創建和處置的開銷,充分利用的內置功能來有效地進行通信。 單例模式或依賴注入是用於管理此實例的合適方法。
以上是我應該為每個WebAPI調用創建一個新的HTTPCLIENT實例嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!