Ответ 1
Думаю, я решу свой собственный вопрос.
Мой php занимает некоторое время, чтобы загрузить, я думаю, что wget-повторы или тайм-аут после определенного установленного по умолчанию времени.
Я решил это, используя/usr/bin/php
У меня есть 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 по умолчанию вызывает эту проблему.
Думаю, я решу свой собственный вопрос.
Мой php занимает некоторое время, чтобы загрузить, я думаю, что wget-повторы или тайм-аут после определенного установленного по умолчанию времени.
Я решил это, используя/usr/bin/php
Документы wget предоставляют время ожидания чтения по умолчанию 900 секунд или 15 минут.
если в любой точке загрузки данные не получены больше, чем указанное количество секунд, чтение не выполняется, и загрузка перезапущен
Вот почему вы снова видели файл, который был вызван через 15 минут. Вы можете указать более длительный тайм-аут, добавив параметр и соответствующее количество секунд:
--read-timeout=1800
Чей пользователь crontab это?
Проверьте, есть ли другой пользователь, для которого вы создали задание cron в разное время и забыли об этом.