Тайм-аут WGET?

Я выполняю Сценарий PHP через использование крона Wget со следующей командой:

wget -O - -q -t 1 http://www.example.com/cron/run

Сценарий возьмет максимум 5-6 минут, чтобы сделать его обработку. WGet будет ожидать его и давать всему этому время, в котором требуется, или это испытает таймаут?

73
задан mmdanziger 13 June 2012 в 12:12
поделиться

2 ответа

Согласно справочной странице wget , есть несколько параметров, связанных с тайм-аутами - и таймаут чтения по умолчанию составляет 900 секунд, поэтому я говорю, что да, это может быть тайм-аут.


Вот параметры, о которых идет речь:

-T seconds
--timeout=seconds

Установите время ожидания сети на секунды секунды. Это эквивалентно указанию - dns-timeout , - connect-timeout и - время ожидания чтения , все в одно и то же время .


И для этих трех вариантов:

--dns-timeout=seconds

Установите время ожидания поиска DNS на секунды секунды.
Поиск DNS, который не завершился в течение указанного времени , завершится ошибкой.
По умолчанию для DNS-запросов нет тайм-аута , кроме , реализуемого системными библиотеками.

--connect-timeout=seconds

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

--read-timeout=seconds

Установите тайм-аут чтения (и записи) на секунд секунды.
«Время» этого тайм-аута относится к времени простоя: если в любой момент загрузки, данные не получены более чем за {{1} }} указанное количество секунд, чтение завершится ошибкой и загрузка будет перезапущена.
Этот параметр не влияет напрямую на продолжительность всей загрузки .


Я полагаю, что использование чего-то вроде

wget -O - -q -t 1 --timeout=600 http://www.example.com/cron/run

должно гарантировать, что нет тайм-аута, превышающего продолжительность вашего скрипта.

(Да, это, наверное, самое жестокое решение из возможных ^^)

132
ответ дан 24 November 2019 в 12:13
поделиться

Тайм-аут по умолчанию составляет 900 секунд. Вы можете указать другой тайм-аут.

-T seconds
--timeout=seconds

По умолчанию попытка повторяется 20 раз. Вы можете указать разные попытки.

-t number
--tries=number

ссылка: документ wget man

30
ответ дан 24 November 2019 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: