本文實(shí)例講述了PHP+swoole+linux實(shí)現(xiàn)系統(tǒng)監(jiān)控和性能優(yōu)化操作。分享給大家供大家參考,具體如下:
服務(wù)器監(jiān)控
端口監(jiān)控php運(yùn)行shell腳本
class Server {
const PORT = 8811;
/**
* 獲取端口指定端口信息;如果在運(yùn)行返回1;否則返回0;
*/
public function port() {
$shell = "netstat -anp 2>/dev/null | grep ". self::PORT . " | grep LISTEN | wc -l";
$result = shell_exec($shell);
if($result != 1) {
// 發(fā)送報(bào)警服務(wù) 郵件 短信
/// todo
echo date("Ymd H:i:s")."error".PHP_EOL;
} else {
echo date("Ymd H:i:s")."succss".PHP_EOL;
}
}
}
/**
* swoole毫秒定時(shí)器;每隔2秒運(yùn)行一下腳本
*/
swoole_timer_tick(2000, function($timer_id) {
(new Server())->port();
echo "time-start".PHP_EOL;
});
linux在終端執(zhí)行命令并且寫(xiě)入到文件里面
nohup /usr/local/php/bin/php/www/swoole/thinkphp_swoole/script/monitor/server.php>/www/swoole/thinkphp_swoole/script/monitor/a.txt-**
根據(jù)端口別名使用.sh(shell腳本)平滑重啟服務(wù)
echo "loading..."
pid=`pidof live_master`
echo $pid
kill -USR1 $pid
echo "loading success"
后臺(tái)啟動(dòng)swoole
nohup /usr/local/php/bin/php /www/swoole/thinkphp_swoole/server/ws.php>/www/swoole/server/thinkphp_swoole/swoole.log
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP擴(kuò)展開(kāi)發(fā)教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php curl用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《php字符串(string)用法總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- PHP中你可能忽略的性能優(yōu)化利器:生成器
- PHP性能優(yōu)化大全(php.ini)
- PHP-FPM實(shí)現(xiàn)性能優(yōu)化
- 大家須知簡(jiǎn)單的php性能優(yōu)化注意點(diǎn)
- php之性能優(yōu)化案例