【发布时间】:2016-06-26 15:52:58
【问题描述】:
在我的多线程应用程序中,我向一些 http 服务器发送一些 http 请求,我会说 10 个服务器,每个服务器 300 个不同的请求,大约每小时一次,没什么太严重的。
我的问题是:我应该为所有传出连接保留一个 HttpClient 吗?也许每个唯一的目标服务器一个?还是每次“迭代”一次(每小时开始大约需要 10 分钟)?
我目前对每个请求都使用一个 PoolingHttpClientConnectionManager 和 HttpClientBuilder.setConnectionManager(connectionManager).build()。
我有一种真正浪费资源的感觉,而且我还看到每台服务器的许多连接处于ESTABLISHED 状态,尽管我使用的是池连接管理器。 (每台服务器的请求都是一一发送的,不并发)
【问题讨论】:
标签: java multithreading apache-httpclient-4.x apache-httpcomponents