use*_*576 5 java multithreading http
我完成了一个使用25个不同线程的java应用程序的编码,每个线程都是一个无限循环,其中发送了一个http请求,并且处理了返回的json对象(小的一个).至关重要的是,特定线程发送的两个请求之间的时间小于500毫秒.但是,我对我的程序做了一些基准测试,时间超过1000毫秒.所以我的问题是:除了创建多个线程之外,还有更好的方法来处理多个连接吗?我迫切需要帮助,所以我很感谢您的任何建议!
PS:我有一个像样的互联网连接(我对请求的目标服务器的ping大约是120ms).
我建议查看Apache HttpClient:
具体来说,您将有兴趣构建一个具有池连接管理器的客户端。然后您可以利用同一个客户端。
PoolingClientConnectionManager connectionManager = new PoolingClientConnectionManager();
connectionManager.setMaxTotal(number);
HttpClient client = new DefaultHttpClient(connectionManager);
Run Code Online (Sandbox Code Playgroud)
这是处理您的用例的具体示例: