我们有一个Java应用程序,它使用urlfetch调用外部api。我们遇到了请求时间问题。当我们在当地环境中提出请求时,我们的平均时间为300毫秒,但在生产中我们的时间为1秒或1.4秒。
这是我们正在使用的代码:
Calendar start = Calendar.getInstance();
try {
URLFetchService fetcher = URLFetchServiceFactory.getURLFetchService();
URL url = new URL( String.format( API_URL, productsIds ) );
Future<HTTPResponse> future = fetcher.fetchAsync(url);
HTTPResponse responseHttp = future.get();
byte[] content = responseHttp.getContent();
response = new String(content);
System.out.println("request time :" + (Calendar.getInstance().getTimeInMillis() - start.getTimeInMillis() ) );
} catch ( Exception e ) {
LOGGER.log( Level.SEVERE, "Error calling api : " + e.getMessage() );
}
Google是否正在进行任何会产生此时间增长的验证?
有没有办法缩短请求时间?