##HttpClient几个主要概念
- CloseableHttpClient
用于发送请求,因为是线程安全的,所以只需要在程序中创建一个单例。 - RequestConfig
用于配置每个请求的各项timeout等等 - PoolingHttpClientConnectionManager
用于配置连接池 - ConnetionKeepAliveStrategy
用于创建KeepAlive策略。 - HTTP 1.1长连接
HTTP 1.1默认支持长连接,在header中会带有keep-alive。
使用HttpClient的线程池,可以利用开启的长连接来减少创建连接的开销。
在整个集成HttpClient的过程中,主要顺序是:
配置KeepAlive策略 -> 配置连接池 -> 配置RequestConfig -> 配置HttpClient
另外也可以通HttpClient来配置自己的RestTemplate
##HttpClient集成
依赖:org.apache.httpcomponents:httpclient:4.5.7
集成配置(Kotlin)
@Configuration
class HttpConfig {
@Primary
@Bean
fun httpClient(requestConfig: RequestConfig, httpClientConnectionManager: HttpClientConnectionManager): CloseableHttpClient {
return HttpClientBuilder
.create()
//.addInterceptorFirst(LogbookHttpRequestInterceptor(Outgo

本文介绍了SpringBoot中集成HttpClient的主要步骤和关键概念,包括CloseableHttpClient的使用、RequestConfig的配置、PoolingHttpClientConnectionManager的设定以及ConnetionKeepAliveStrategy的定制。通过配置HTTP 1.1的长连接和HttpClient的线程池,可以有效提高请求效率。同时,文章还提及了如何通过HttpClient来定制RestTemplate。
最低0.47元/天 解锁文章
2623

被折叠的 条评论
为什么被折叠?



