5

我完成了一个使用 25 个不同线程的 java 应用程序的编码,每个线程都是一个无限循环,其中发送一个 http 请求并处理返回的 json 对象(小对象)。特定线程发送的两个请求之间的时间必须小于 500 毫秒,这一点至关重要。但是,我对我的程序做了一些基准测试,时间远远超过 1000 毫秒。所以我的问题是:除了创建多个线程之外,还有更好的方法来处理多个连接吗?我迫切需要帮助,所以我很感谢您提供的任何建议!

PS:我有一个不错的互联网连接(我对请求目标服务器的 ping 大约是 120 毫秒)。

4

1 回答 1

2

我建议看看Apache HttpClient

具体来说,您将对构建具有池连接管理器的客户端感兴趣。然后,您可以利用相同的客户端。

PoolingClientConnectionManager connectionManager = new PoolingClientConnectionManager();
connectionManager.setMaxTotal(number);

HttpClient client = new DefaultHttpClient(connectionManager);

这是处理您的用例的特定示例:

于 2012-12-21T02:16:27.477 回答