Подтвердить что ты не робот

Crontab с wget - почему он работает дважды?

У меня есть php script, который запускается из webservice и вставляется в DB.

crontab -e

......other cron tasks above.......
...
..
..
# Run test script.php at 1610
10 16 * * * /usr/bin/wget -q -O /home/username/my_cronjobs/logs/cron_adhoc http://localhost/project/script.php

По-видимому, в 16:10 этот script запускается дважды! 16:10:01 и 16:25:02

Это что-то не так и нужно делать с помощью wget?? Или я неправильно установил расписание на работу cron?

Когда я запустил http://localhost/project/script.php из браузера, он будет запускаться только один раз..

Любая идея относительно этой проблемы?

Я тестировал, нет других пользователей, выполняющих ту же работу... Я подозреваю, что работает wget.

Как мой script требуется как минимум 20 минут для завершения без отправки ответа (он вытаскивает много данных из webservicces и сохраняет в db). Подозревайте, что по умолчанию проблема с wget по умолчанию вызывает эту проблему.

4b9b3361

Ответ 1

Думаю, я решу свой собственный вопрос.

Мой php занимает некоторое время, чтобы загрузить, я думаю, что wget-повторы или тайм-аут после определенного установленного по умолчанию времени.

Я решил это, используя/usr/bin/php

Ответ 2

Документы wget предоставляют время ожидания чтения по умолчанию 900 секунд или 15 минут.

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

Вот почему вы снова видели файл, который был вызван через 15 минут. Вы можете указать более длительный тайм-аут, добавив параметр и соответствующее количество секунд:

--read-timeout=1800

Ответ 3

Чей пользователь crontab это?

Проверьте, есть ли другой пользователь, для которого вы создали задание cron в разное время и забыли об этом.