PoolingHttpClientConnectionManager和keep-alive设置

时间:2017-11-29 23:10:44

标签: java multithreading performance apache-httpclient-4.x

我有http请求池的性能关键应用程序。我的应用程序服务是突发处理批处理文件。 PoolingHttpClientConnectionManager是否重用多个请求的连接? 如果是,我如何计算最佳保持活动时间?我的http请求响应时间是平均25毫秒。

1 个答案:

答案 0 :(得分:0)

是的,它会重复使用多个请求的连接。请注意,它将每个路由的最大数量连接到池中,默认值为2,因此您几乎肯定会想要增加它,否则它将成为瓶颈!

计算最佳保持活动时间并非易事,因为它取决于很多事情。爆发的频率,Web前端或应用程序服务器支持的保持活动时间等等。一般来说,我会从5-10秒开始测量。如果你知道爆发间隔8秒,那么就要瞄准稍大的东西。如果突发间隔超过几分钟,那么长时间保持连接会有问题,因为它们会超时(防火墙,服务器端关闭,......)。