HttpClient
使用:绩效分析> WebAPI客户端应用程序中一个HttpClient
实例的理想寿命是经常讨论的主题。该分析阐明了不同方法的性能含义。
可重用性:性能注意事项HttpClient
>
类旨在跨多个API调用重复使用。 像HttpClient
(管理凭据和cookie)和HttpClientHandler
,不必要地重新定位这些组件,从而导致性能降级。
DefaultRequestHeaders
HttpClient
>利用消息处理程序有效
> 对消息处理程序的支持(用于日志记录,审计,速率限制等)是另一个关键因素。 每个新的
实例都需要重新注册这些处理程序,在请求中添加开销并可能丢失状态信息。
HttpClient
HttpClient
> tcp/ip连接池池和性能
> 处置>实例也关闭了其基础
,终止了关联的TCP/IP连接。 反复创建和处置每个请求的对象会导致频繁的连接建立,从而显着影响性能,尤其是对于远程或HTTPS连接。 这否定了连接汇总的好处。
HttpClient
HttpClientHandler
推荐方法:最佳性能的单例模式HttpClient
中使用单个实例,有可能对不同的API使用单独的实例。这种方法最小化对象创建和处置的开销,充分利用的内置功能来有效地进行通信。 单例模式或依赖注入是用于管理此实例的合适方法。
以上是我应该为每个WebAPI调用创建一个新的HTTPCLIENT实例吗?的详细内容。更多信息请关注PHP中文网其他相关文章!