Apache HTTP - setSocketTimout vs setConnectTimout vs setConnectionRequestTimeout
В чем разница между setSocketTimout
, setConnectTimout
и setConnectionRequestTimeout
?
RequestConfig requestConfig = RequestConfig.copy(RequestConfig.DEFAULT)
.setSocketTimeout(500)
.setConnectTimeout(500)
.setConnectionRequestTimeout(500)
.build();
Ответы
Ответ 1
Connection timeout
- это таймаут, пока не будет установлено соединение с сервером.
Socket timeout
- это время ожидания приема данных.
Однако метод setConnectionRequestTimeout
специфичен для настройки диспетчера соединений. Он возвращает тайм-аут в миллисекундах, используемый при запросе соединения из диспетчера подключений. Значение тайм-аута, равное нулю, интерпретируется как бесконечный тайм-аут.
Ответ 2
ConnectTimeOut. - Указывает максимальное время в миллисекундах. Клиент будет ждать установления соединения с сервером. В течение времени, когда сервер должен установить соединение с клиентом, он выдает исключение.
SocketTimeout: - Он определяет максимальное время простоя/неактивности в миллисекундах между двумя последовательными пакетами данных.
обратитесь к javadocs для более подробной информации