Java 为什么第一次运行HttpClient会很慢,但要快得多?
代码是(我编写了一个工具类,尽管solrj会做得更好):Java 为什么第一次运行HttpClient会很慢,但要快得多?,java,httpclient,Java,Httpclient,代码是(我编写了一个工具类,尽管solrj会做得更好): 用于(int i=0;i第一次,服务器名称必须解析为IP地址,并且必须创建TCP连接。在后续请求中,该连接通常可以重复使用。即使无法重复使用该连接,IP地址也可能仍然被缓存。我假设URL的名称查找已被缓存,并且客户机可能会连接是持久的。请尝试在for循环的底部添加一个客户机.close();。我将工具类放入实际项目中,它运行得很快(从spring获取singletonHttpClient) for(int i=0;i<10
用于(int i=0;i第一次,服务器名称必须解析为IP地址,并且必须创建TCP连接。在后续请求中,该连接通常可以重复使用。即使无法重复使用该连接,IP地址也可能仍然被缓存。我假设URL的名称查找已被缓存,并且客户机可能会连接是持久的。请尝试在for
循环的底部添加一个客户机.close();
。我将工具类放入实际项目中,它运行得很快(从spring获取singletonHttpClient
)
for(int i=0;i<100;i++){
SolrClient client = new SolrClient(new DefaultHttpClient());
System.out.println(client.fetchFrom(URL, new SolrQuery("cc","id")));
Thread.sleep(1000);
}