Как запустить PHP-скрипт в качестве демона

0

У меня есть это PHP-приложение, запуск которого действительно сложный. Я вдохновлен тем, как работает nodejs (приложение работает вживую и обслуживает клиентов без нагрузки и разгрузки, например PHP).

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

В Nodejs скрипт загружается в память для всего сеанса, а код запускается от начала до конца для каждого запроса, нет загрузки скрипта для каждого запроса и без разгрузки в конце запроса.

Можно ли выполнить то же самое с помощью linux-демона. Я буду развертывать его на AWS Elasticbeanstalk.

Пример кода PHP

<?php 
echo "Hello " . $_SERVER["REMOTE_ADDR"];
//followed by a series of instantiation of several classes and objects at startup
//would like to have them instantiated only once, keep in memory and then executed
//based on the URL onwards from there
//just like how nodejs works 
?>
  • 1
    Если запуск сложный, я бы сохранил состояние в сеансе, базе данных, текстовом файле и т. Д. Однако, кажется, что все возможно: github.com/shaneharter/PHP-Daemon
  • 0
    Привет, Йероен, это не состояние, это на самом деле создание экземпляров классов и объектов и их взаимосвязь, поэтому запуск является вычислительно тяжелым, вместо этого я хотел бы, чтобы создание экземпляров выполнялось только один раз, и запрос на основе URL-адреса выполнялся оттуда, мне интересно, если nodejs пример и как это работает дает представление
Показать ещё 3 комментария
Теги:
amazon-ec2
daemon

1 ответ

-2

Возможно, эта страница может вам помочь: Использование командной строки PHP:

php -f somefile.php

то, возможно, вам нужно создать сценарий bash и добавить к демону. как объяснено на этой странице

С уважением

Phoenixzero

  • 1
    Это выполняется из командной строки; это не то же самое, что бегать как демон.
  • 0
    @CamilStaps. Вы правы. Нужно расширить мой ответ. Просто вам нужно создать хеш-скрипт и добавить его в демон. stackoverflow.com/questions/19233529/run-bash-script-as-daemon
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню