PHP e script de inicialização

0

Eu escrevi um manipulador de trabalho php para mediawiki. O script gerará 4 processos PHP (Scanner e três funcionários).

youri@pewpew:~$ ps -aux | grep php
www-data  1579  0.5  0.2 263888 12752 ?        SN   Feb19  38:44 php Scanner.ph
www-data  1581  0.0  0.2 263612 12656 ?        SN   Feb19   6:29 php Worker.php
www-data  1594  0.0  0.2 263612 12652 ?        SN   Feb19   6:13 php Worker.php
www-data  1597  0.0  0.2 263612 12652 ?        SN   Feb19   6:08 php Worker.php
youri     1961  0.0  0.0   9360   660 pts/0    R+   11:48   0:00 grep --color=auto php

Os processos são iniciados com um arquivo start.php:

#!/usr/bin/php 
<?php

require_once('config.php');

$logger->log('Starting scanner');
exec("nice -n 10 php Scanner.php > /dev/null 2>/dev/null &");

$logger->log('Starting workers');
for ($i = 0; $i < $config->getMaxRunningJobs(); $i++) { 
    exec("nice -n 10 php Worker.php > /dev/null 2>/dev/null &");
    sleep(1);
}

$logger->log('Done');

Qual é a melhor maneira de adicionar isso a um script de inicialização (já que não tem stop / status)?

    
por THEPHPNERD 24.02.2015 / 11:51

1 resposta

0

Eu escreveria um script de inicialização padrão com php start.php como a função de início.

Quanto à função de parada, faça algo como:

kill -9 'ps -ef|grep "php Scanner.php"|awk '{ print $2 }''

E você pode deixar a função de status vazia.

    
por Jos 24.02.2015 / 12:06