Apache HTTPClient不允许超过1500个可重用连接

时间:2013-04-09 00:38:13

标签: apache-httpclient-4.x apache-commons-httpclient

我正在使用Apache HTTPClient(4.2.2)/ Java7打开许多可重用的连接到tomcat 7服务器(模拟许多用户反复点击服务)。 Ubuntu 12上的客户端和服务器(但不同的机器)。我确保systctl.conf和limits.conf允许这种情况。

这适用于大约1500个模拟用户/连接。连接按预期重用。然而,在大约1500到1600个模拟用户之间,连接不再被重复使用并且一直关闭/重新打开。为什么会出现这种情况?

我不认为问题出在服务器端,因为当我在不同的机器上针对同一台服务器启动多个模拟客户端时,只要每个客户端不超过1500个连接,服务器就可以重用连接

2 个答案:

答案 0 :(得分:1)

根据连接管理器或服务器端配置的配置,可能有多种原因导致不再重复使用连接的原因。找出原因的最简单方法是运行带有上下文登录的HttpClient,如Logging Guide

中“连接管理/请求执行的上下文日志记录”中所述

答案 1 :(得分:0)

您可能需要增加可用工作人员的数量,至少通过转到服务器状态来检查当您的连接用完时是否有工作人员