Таймаут HTTP-клиента и таймаут сервера - программирование
Подтвердить что ты не робот

Таймаут HTTP-клиента и таймаут сервера

В соответствии с этим вопросом: Где я могу найти настройки таймаута по умолчанию для всех браузеров? каждый браузер имеет настройку по умолчанию для тайм-аута

Тайм-аут по умолчанию в Firefox17 после проверки about:config равен 115 с. Тем не менее, я протестировал, чтобы выполнить некоторый запрос, в котором я был настроен, и он вернул запрос через > 150 секунд.

Так что интересно, как это работает, разве Firefox не должен был раньше времени?

4b9b3361

Ответ 1

Там много форм тайм-аута, вы после таймаута соединения, времени ожидания запроса или времени для жизни (время до остановки TCP-соединения).

По умолчанию TimeToLive в Firefox - 115 с (network.http.keep-alive.timeout)

По умолчанию время ожидания подключения в Firefox составляет 250 секунд (network.http.connection-retry-timeout)

По умолчанию тайм-аут запроса для Firefox составляет 30 секунд (network.http.pipelining.read-timeout).

Время, необходимое для выполнения HttpRequest, зависит от того, было ли установлено соединение, которое должно быть в пределах 250 секунд, которое, как я полагаю, вас не устраивает. Вероятно, после таймаута запроса, который, я думаю, составляет 30 000 мс (30 секунд), поэтому в заключение я бы сказал, что это тайм-аут с тайм-аутом подключения, почему вы получили ответ после ~ 150, хотя я действительно не тестировал это.

Ответ 2

Согласно https://bugzilla.mozilla.org/show_bug.cgi?id=592284, pref network.http.connection-retry-timeout управляет количеством времени в миллисекундах! дождаться успеха в исходном соединении до начала второго. Установка этого параметра на 0 отключает параллельное соединение.

Ответ 3

перейдите к URL about:config и вставьте каждую строку:

network.http.keep-alive.timeout;10
network.http.connection-retry-timeout;10
network.http.pipelining.read-timeout;5
network.http.connection-timeout;10