Как я могу запустить демон на xampp, используя PHP? - PullRequest
0 голосов
/ 07 июня 2018

У меня есть база данных XML, которой я хочу управлять независимо от пользователей на моем сайте.Что касается этого вопроса, то мне кажется, что я должен написать скрипт-демон для управления моей базой данных.Это все прекрасно, но я чувствую, что открываю банку с червями.Я хотел написать свой демон-скрипт на PHP, поэтому я посмотрел на PCNTL.Но я быстро понял, что PCNTL не подходит для веб-серверов.Так что теперь я в тупике.Как я могу заставить демона работать на моем сервере?Нужно ли учить другой язык?Я только хочу написать свои собственные сценарии.Но я чувствую себя потерянным.Я бы предпочел написать своего демона на PHP, так как я знаком с языком.

Я изучал все, от вопросов PCNTL, CLI, SO, многочисленных статей о процессах демона ... и т. Д.

Я использую PHP 5.6.32 (cli), Windows 7, на Apache.XAMPP 5.6.32.Система Unix.

РЕДАКТИРОВАТЬ: У меня также есть настройки Windows для запуска PHP из командной строки.

1 Ответ

0 голосов
/ 07 июня 2018

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

  • Используя Cron Jobs, если вы работаете в системах Unix crontab будет в порядке, таким образом вы можете указать интервал, в течение которого система автоматически выполняет заданныйскрипт и затем выход.
  • Истинный демон, сначала вам нужно изменить max_execution_time в PHP.ini на 0 (бесконечно), затем при вызове демона для первой функции set_time_limit(0);, не забудьте запустить еготолько однажды.Однако, если есть какой-то сбой, например, непроизведенная ошибка, сценарий завершится, и вам нужно будет снова открыть его вручную, и не пытаться ... перехватить цикл while, потому что он, вероятно, войдет в бесконечный цикл.Выполните скрипт с php -f daemon.php.
...