Фоновый процесс PHP в безопасном режиме

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

Например, код моего фонового процесса находится в файле bg.php, и я хочу, чтобы он выполнялся, напишите по окончании другого конкретного скрипта. (или, может быть, с некоторой задержкой)
Я много искал . некоторые предлагаемые библиотеки, такие как beanstalkd, но я думаю, что эта библиотека тяжела для моего простого фонового процесса, а также не имеет хорошей документации для PHP. некоторые другие говорили о таких функциях, как exec(), что невозможно в безопасном режиме.

  • 1- Есть ли у кого-нибудь простое решение этой проблемы?
  • 2- Я также упоминал о заданиях cron, существующих в cpanel, которые подготавливают задачи для выполнения в определенное время. Могу ли я использовать эту опцию, чтобы каким-то образом решить мою проблему?

Я отметил, что хочу простое и легкое решение. любые предложения глубоко оценены.


person Aliweb    schedule 16.09.2012    source источник


Ответы (1)


Невозможно использовать файл PHP, обслуживаемый HTTP-сервером, потому что все процессы завершатся после завершения запроса.

Таким образом, cPanel cron — хороший вариант, вам не нужно, чтобы запись cron всегда была включена, просто настройте запись один раз и отключите ее после запуска скрипта.

Только вам нужно будет добавить & в конце команды cron, чтобы она работала в фоновом режиме.

person Maks3w    schedule 16.09.2012
comment
не могли бы вы объяснить больше? Я работал с заданиями по кукурузе только в визуальной форме и настроил выполнение заданий, например, через 5 минут с этого момента. но я не знаю, как сказать, например, запустить через 5 минут по окончании скрипта. - person Aliweb; 16.09.2012
comment
IIRC в cPanel вы можете пометить задание cron как включенное или нет, если не просто добавить или удалить запись. Я говорю это, потому что вы не будете запускать новый фоновый процесс каждые X минут. Вы можете улучшить свой сценарий, чтобы обнаруживать другие выполняемые сценарии, например, сделать пустой файл флагом. Конечно, я говорю об одном сценарии, каждый из которых постоянно находится в фоновом режиме. Если ваш скрипт предназначен для извлечения некоторой информации каждые X секунд, вы можете настроить Cron, как всегда. - person Maks3w; 16.09.2012