2015-12-23 3 views
0

Моя архитектура состоит из:Горячая перезагрузка PHP-скрипта?

A supervisor Контроллер, который обеспечивает выполнение n экземпляров одних и тех же PHP-скриптов (и перезапускает их, когда их нет).

Сценарий представляет собой цикл while, который ждет задания от Beanstalk и обрабатывает его, когда он поступит. После определенного количества циклов (определенных) выход сценария, чтобы перезагрузить супервизор (я делаю это, потому что PHP в конечном итоге нестабилен).

Когда я нажимаю некоторые изменения, я должен ждать, что «рабочие» закончат количество ожидаемого цикла, которое необходимо перезапустить, а затем принять во внимание новые изменения.

Есть ли способ закрепить это?

Благодарим за помощь.

+0

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

+0

Я не думаю, что здесь нужен другой язык, потому что, если я использую более подходящий язык, в моем случае это будет хуже: сценарий никогда не будет перезагружен, потому что он слишком эффективен;) –

ответ

1

Может быть просто развязка петли из кода, который глотает работу + с помощью расширения управления процесса может помочь, проверить это: http://www.hackingwithphp.com/16/1/8/running-programs-in-the-current-process-space

(Извините, если я делаю неправильные предположения здесь, у меня нет достаточно Карма, чтобы задавать вопросы с помощью комментариев)

+0

Идея использования внешнего скрипта действительно интересно. Поскольку я уже использую PHP в качестве сценариев оболочки, это имеет смысл. Кстати, добро пожаловать в сообщество :) –

+0

* «Мне не хватает кармы, чтобы задавать вопросы с помощью комментариев» * - У вас есть 86, и этого достаточно, чтобы комментировать ;-) Для этого требуется 50+. –