Swoole 后台守护进程运行 服务器平滑重启
1.新建service.php
#通过swoole_set_process_name函数添加进程名称
#通过设置daemonize => true 程序将转入后台作为守护进程运行。长时间运行的服务器端程序必须启用此项。
如果不启用守护进程,当 ssh 终端退出后,程序将被终止运行。
<?php
//创建Server对象,监听 127.0.0.1:9501 端口
$server = new Swoole\Server('127.0.0.1', 9502);
$server->set([
'daemonize' => true
]);
/**
* @param $server
* 添加进程名称
*/
swoole_set_process_name("live_master");
//监听连接进入事件
$server->on('Connect', function ($server, $fd) {
echo "Client: Connect.\n";
});
//监听数据接收事件
$server->on('Receive', function ($server, $fd, $reactor_id, $data) {
$server->send($fd, "Server: {$data}");
});
//监听连接关闭事件
$server->on('Close', function ($server, $fd) {
echo "Client: Close.\n";
});
//启动服务器
$server->start();2.创建reload.sh 执行脚本
echo "loading..." pid=$(pidof live_master) #pid= `pidof live_master` echo $pid kill -usr1 $pid echo "success loading..."




