Постоянный запуск скрипта PHP

У меня есть база данных в MySQL, у которой есть записи времени. Есть более 1000 записей времени. Я хочу извлечь время и запустить PHP-скрипт именно в это время ..

Я пытался постоянно запускать PHP-скрипт, который проверяет время, но мой сервер не позволяет запустить скрипт более 60 секунд.

РЕДАКТИРОВАТЬ. Я должен проверять базу данных каждую секунду. Есть ли альтернатива?

Solutions Collecting From Web of "Постоянный запуск скрипта PHP"

Используйте пакет груши, System_Daemon

http://pear.php.net/package/System_Daemon/

Попробуйте cron Unix.

Для выполнения сценария вам понадобится внешняя служба. В окне Unix это будет cron . В окне Windows используйте Планировщик заданий .

Думали ли вы о написании своего процесса как демон сервера. Он запустится и запустится во время цикла. Каждые несколько минут или, как правило, вы хотели бы проверить следующие x минут времени выполнения. Вы ставите очередь на свои запросы, и всякий раз, когда приходит время, вы начинаете сценарий, который вам нужно запустить. Я не думаю, что cron – это то, что вам нужно, поскольку вы пытаетесь планировать будущие события в произвольные моменты времени … И я уверен, что это то, что вы сейчас используете, чтобы каждый раз проверять db.

Напишите скрипт PHP для чтения из базы данных и добавьте записи в ваш crontab, чтобы запустить скрипт в нужное время

Сохранение процесса – это не очень хорошее решение, не в последнюю очередь потому, что вам нужно обеспечить его работу. Предположительно, вы знаете, когда произойдет следующее возникновение, поэтому используйте «atd» для его расписания – при запуске сценарий должен также работать, когда и как планировать следующее задание.

Это означает, что рабочие места привязаны к цепочке – и отказ одного разрывает цепочку, также степень детализации большинства реализаций atd может быть довольно высокой.

Возможно, вам стоит взглянуть на использование более сложного инструмента планирования, например Nagios, или подход типа мониторинга процесса, например, daemontools DJB или OPMN Oracle.

C.

Вы должны использовать функцию sleep(arg) которая приостанавливает скрипт PHP в течение заданного времени, а затем продолжается.

 sleep(50); //Pauses myFunction(); //Runs after the pause 

Например, это приостанавливает скрипт в течение 50 секунд.

DJEM DAEMONTOOLS отлично. Так что, по-видимому, это systemd и / или Upstart, хотя Remnant играет настоящий дрочи.

Рекомендуемый пакет Pear – system_daemon отлично смотрится. Тем не менее, автор теперь рекомендует использовать новые функции, которые легко доступны в Ubuntu: upstart

См. Его статью в своем блоге с 2012 года