php-скрипт, который вызывает себя, когда он закончен - неопределенно


У меня есть php-скрипт, выполнение которого может занять от 2 до 10 минут. Он получает информацию со всего Интернета, поэтому его время зависит от того, как быстро говорят многие другие вещи.

Раньше я запускал скрипт на cron каждые 15 минут, но иногда для запуска требуется всего 2 минуты.

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

 4
Author: petesiss, 2010-07-24

3 answers

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

Вот учебник, как это сделать.

Http://kevin.vanzonneveld.net/techblog/article/create_daemons_in_php/

 7
Author: David Young, 2010-07-23 20:20:46

Поместить все это в бесконечный цикл? Либо в самом коде PHP, либо создайте скрипт запуска, который это делает.

 2
Author: Daniel Egeberg, 2010-07-23 20:20:02

Написание демона, вероятно, является лучшим решением.

Если вы ленивы, и в linux/unix вы можете просто написать сценарий бесконечного цикла и запустить его в сеансе экрана.

 1
Author: timdev, 2010-07-23 20:47:43