Java: глобальные тайм-ауты jvm работают через прокси? - PullRequest
2 голосов
/ 27 января 2011

Я установил 2 глобальных сетевых таймаута:

System.setProperty("sun.net.client.defaultConnectTimeout", "2000");
System.setProperty("sun.net.client.defaultReadTimeout", "3000");

Работает нормально при прямых подключениях. Но если для JVM установлен прокси-сервер, соединения остаются в состоянии ожидания несколько минут.

Прокси устанавливается через параметры JVM:

http.proxyHost=some_host 
http.proxyPort=8080

Почему соединения не прерываются по таймауту, если задействован прокси? В целом, какая конфигурация сети может помешать правильной работе http-соединения / тайм-аута чтения?

1 Ответ

0 голосов
/ 28 января 2011

Они работают между JVM и прокси. По своей природе прокси должен отражать то, что он получает или не получает от сервера почти мгновенно, хотя у людей есть странные идеи о том, как реализовать доменные прокси. Но тайм-ауты JVM на прокси не вступают в силу.

...