как реализовать управление дочерним(fork- нутым) процессом ...

  • Автор темы Автор темы DolgoV
  • Дата начала Дата начала

DolgoV

Новичок
как реализовать управление дочерним(fork- нутым) процессом ...

сейчас стоит задача в следующем, запускается скрипт deamon.php который сначала fork-ает, а затем выдаёт работу порожденным скриптам. Общение родителького deamon.php скрипта с child решил делать через базу mySql.
на каждый child поток сущесвует строка в таблице с полями param_in и param_out.


Логика.
1. В поле param_in deamon.php пишет каждому своему child-у команду.
------------------------------ +
param_in | param_out |
------------ +--------------- +
exec | NULL |
------------------------------+

2. каждый child читает свой param_in затем обнуляет его, после выполнения дейсвия пишет ответ в свой param_out

------------------------------ +
param_in | param_out |
------------ +--------------- +
NULL | executed |
------------------------------+

3. deamon.php читает не пустые колонки каждого столбца param_out затем обнуляет их и выдаёт дальнейшие действия для каждого потока
------------------------------ +
param_in | param_out |
------------ +--------------- +
action1 | NULL |
------------------------------+

потом всё повторяется.

Проблема в том, что я не могу придумать эффективного алгоритма управления цепочкой передачи-> встречи-> отчета в скриптах deamon и child.


Может кто поделится каким решением, или предложит альтернативный вариант обмена информацией между скриптами, буду благодарен
 
Автор оригинала: Dovg
Может быть стоит управлять сигналами?

http://ru.php.net/manual/ru/function.posix-kill.php
а как можно сигналами значения передавать ?
у меня например с родителя идет команда exec=1,1,бла бла бла
это означает что клиент должен запустить метод exec с параметрами (1,1,'бла бла бла') ?
 
сигналами можно передать, что необходимо перечитать конфигурацию
 
DolgoV Вы знаете, для каких целей существует префорк? Если нет, то упрощайте архитектуру. Скорее всего, вполне можно обойтись форком на команду.
 
Сверху