Hallo zusammen,
ich habe folgendes Problem...
Eine Gruppe von Threads versuchen mit Http Connection (Libary HttpClient Jakarta Commons) den Inhalt einer Webseite auszulesen. Leider dauert die Anfrage 20 sek. woran kann das liegen...
Ich dachte es hat etwas mit dem Header zu tun.. jedoch diese Einstellungen haben auch nichts gebracht.
MfG
Yigiter
ich habe folgendes Problem...
Eine Gruppe von Threads versuchen mit Http Connection (Libary HttpClient Jakarta Commons) den Inhalt einer Webseite auszulesen. Leider dauert die Anfrage 20 sek. woran kann das liegen...
Ich dachte es hat etwas mit dem Header zu tun.. jedoch diese Einstellungen haben auch nichts gebracht.
Code:
InputStream tInputStream = null;
// Create an instance of HttpClient.
HttpClientParams tClientParams = new HttpClientParams();
tClientParams.setParameter(HttpClientParams.SO_TIMEOUT, new Integer(5000));
tClientParams.setParameter(HttpClientParams.CONNECTION_MANAGER_TIMEOUT, new Long(10000));
tClientParams.setParameter(HttpMethodParams.USER_AGENT,
"Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9) Gecko/2008052906 Firefox/3.0");
tClientParams.setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
tClientParams.setContentCharset("ISO-8859-1");
HttpClient tHttpClient = new HttpClient(tClientParams);
tHttpClient.getParams().setVersion(HttpVersion.HTTP_1_1);
tHttpClient.getParams().setHttpElementCharset("US-ASCII");
tHttpClient.getParams().setContentCharset("ISO-8859-1");
tHttpClient.getParams().setBooleanParameter(HttpMethodParams.SINGLE_COOKIE_HEADER, true);
// Create a method instance.
GetMethod method = new GetMethod(aUrl);
// Provide custom retry handler is necessary
method.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler(3, false));
// Warnings sollen Ignoriert werden
method.getParams().setParameter(HttpClientParams.WARN_EXTRA_INPUT, false);
method.addRequestHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
method.addRequestHeader("Accept-Language", "de-de,de;q=0.8,en-us;q=0.5,en;q=0.3");
method.addRequestHeader("Connection", "Keep-Alive");
method.addRequestHeader("Keep-Alive", "300");
String tInseratText = "";
try {
// Execute the method.
int statusCode = tHttpClient.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
// Error
}
tInputStream = method.getResponseBodyAsStream();
if (tInputStream != null) {
BufferedReader in = new BufferedReader(new InputStreamReader(tInputStream, CHARSET_UTF_8));
// TODO ...
/* Reader wiederschliessen */
in.close();
}
} catch (HttpException e) {
//
} catch (IOException e) {
//
} finally {
// Release the connection.
method.releaseConnection();
}
MfG
Yigiter