一个用于消息队列的并发式php进程管理程序-主程序

后台进程要运行于cli模式

需要对系统的各种消息事件进行监听处理

function sig_handler($signo)
{
    switch ($signo) {
    case SIGTERM:
        echo "\n\ncapture signal SIGTERM...\n";
        ActiveMQDaemon::getInstance()->clear();
        exit;
    case SIGINT:
        // handle shutdown tasks
        echo "\n\ncapture signal SIGINT...\n";
        ActiveMQDaemon::getInstance()->clear();
        exit;
    default:
        echo "\n\ncapture signal {$signo}...\n";
        ActiveMQDaemon::getInstance()->clear();
        exit;
    }
}

// setup signal handlers
$sigs = array(
    SIGALRM,SIGHUP,SIGINT,SIGPIPE,SIGPOLL,SIGPROF,SIGSYS,SIGTERM,SIGUSR1,SIGUSR2,
    SIGVTALRM,SIGABRT,SIGBUS,SIGFPE,SIGILL,SIGIOT,SIGQUIT,SIGSEGV,SIGTRAP,SIGXCPU,SIGXFSZ
);
foreach($sigs as $sig) {
    pcntl_signal($sig, "sig_handler");
}

$config = include "config.php";
declare(ticks = 2);
ActiveMQDaemon::getInstance()->start($config, $sleep);

 

posted on 2017-07-31 17:24  在这个肆意的青春岁月  阅读(154)  评论(0)    收藏  举报