Моя архитектура состоит из следующего:
supervisor
контроллер, который обеспечивает работу n экземпляров одних и тех же PHP-скриптов (и перезапускает их, когда их нет).
Сценарий while
цикл, который ждет работу от Beanstalk
и обработать его, когда он прибудет. После определенного количества циклов (определенных) сценарий завершается, чтобы быть перезагруженным supervisorctl (я делаю это, потому что PHP имеет тенденцию быть нестабильным в долгосрочной перспективе).
Когда я нажимаю некоторые изменения, я должен ждать, что «рабочие» закончили число ожидаемых циклов, которые будут перезапущены, и затем принять во внимание новые изменения.
Есть ли способ закрепить это?
Спасибо за помощь.
Может быть, может помочь простое отделение цикла от кода, который загружает задания + использование расширения управления процессом, проверьте это: http://www.hackingwithphp.com/16/1/8/running-programs-in-the-current-process-space
(Извините, если я делаю неправильные предположения, мне не хватает кармы, чтобы задавать вопросы в комментариях)
Других решений пока нет …