Skip to content

Instantly share code, notes, and snippets.

@phnessu4
Created September 13, 2013 03:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save phnessu4/6546577 to your computer and use it in GitHub Desktop.
Save phnessu4/6546577 to your computer and use it in GitHub Desktop.
php守护进程
<?php
define("THREADS",1);
define("DAEMON","/usr/local/bin/daemon");
define("SCRIPT","/****/worker.php");
define("CHDIR","/****/");
define("NAME_PREFIX","worker");
define("PHP_CLI","/usr/local/php/bin/php");
$args = isset($argv) ? $argv : $_SERVER['argv'];
$action = $args[1];
switch ($action) {
case "start":
start();
break;
case "stop":
stop();
break;
case "restart":
stop();
start();
break;
default :
echo "use worker.sh {start|stop|restart}\r\n\r\n";
break;
}
function start () {
for($i=0; $i<THREADS; $i++) {
$name = NAME_PREFIX."_".$i;
exec(DAEMON." -n ".$name." -D ".CHDIR." -X ".PHP_CLI." ".SCRIPT." -r -O /var/log/worker.log -o /var/log/worker.log");
}
}
function stop () {
for($i=0; $i<THREADS; $i++) {
$name = NAME_PREFIX."_".$i;
exec(DAEMON." -n ".$name." --stop");
}
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment