Временные задачи (cron-like) в PHP - PullRequest
12 голосов
/ 25 ноября 2008

Существует ли полнофункциональный пакет планирования заданий для PHP? Я ищу PHP-эквивалент Java Quartz . Я в порядке, когда что-то запускается извне из cron для управления системой. Функциональность, которую я бы искал:

  • Возможность зарегистрировать задачу (класс / метод) для вызова через заданные интервалы.
  • Возможность указать, может ли данная задача запускаться несколько раз (потенциально долгосрочные методы не должны запускаться несколько раз в некоторых случаях).
  • Все зарегистрированные записи / методы могут быть запущены параллельно (задания основаны на том, что они не блокируют другие синхронизированные задачи).
  • Возможность установить время ожидания для данной задачи.
  • Возможность динамического обновления управления заданиями, например, вы можете отключить некоторые задачи или изменить их частоту без изменения кода.

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

Если этого или какой-то его части еще не существует, есть ли какие-либо указатели на их составление или проект с открытым исходным кодом, в котором реализована какая-то их подгруппа?

Ответы [ 2 ]

3 голосов
/ 25 ноября 2008

Быстрый Google показывает несколько приличных результатов:

Правда, если вы используете какой-либо приличный пакет виртуального хостинга, у вас должен быть доступ к какому-либо планировщику задач, будь то Windows Task Scheduler или cron под * nix. Я знаю, что DreamHost позволяет использовать crontabs уровня пользователя, по крайней мере.

НТН

2 голосов
/ 04 июля 2017

Мы портировали библиотеку Java кварца в PHP (https://github.com/php-quartz).. Код выглядит максимально приближенным к Java.

Он имеет некоторые дополнительные функции, такие как:

  • Интеграция с очередями сообщений, позволяющая выполнять задания на любом языке.
  • Существует возможность использовать его в качестве автономного сервиса.
...