PHP+swoole+linux实现系统监控和性能优化操作示例


Posted in PHP onApril 15, 2019

本文实例讲述了PHP+swoole+linux实现系统监控和性能优化操作。分享给大家供大家参考,具体如下:

服务器监控

端口监控php运行shell脚本

class Server {
  const PORT = 8811;
  /**
   * 获取端口指定端口信息;如果在运行返回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) {
      // 发送报警服务 邮件 短信
      /// todo
      echo date("Ymd H:i:s")."error".PHP_EOL;
    } else {
      echo date("Ymd H:i:s")."succss".PHP_EOL;
    }
  }
}
/**
 * swoole毫秒定时器;每隔2秒运行一下脚本
 */
swoole_timer_tick(2000, function($timer_id) {
  (new Server())->port();
  echo "time-start".PHP_EOL;
});

linux在终端执行命令并且写入到文件里面

nohup /usr/local/php/bin/php/www/swoole/thinkphp_swoole/script/monitor/server.php>/www/swoole/thinkphp_swoole/script/monitor/a.txt-**

根据端口别名使用.sh(shell脚本)平滑重启服务

echo "loading..."
pid=`pidof live_master`
echo $pid
kill -USR1 $pid
echo "loading success"

后台启动swoole

nohup /usr/local/php/bin/php /www/swoole/thinkphp_swoole/server/ws.php>/www/swoole/server/thinkphp_swoole/swoole.log &

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
第十一节 重载 [11]
Oct 09 PHP
php基础教程 php内置函数实例教程
Aug 21 PHP
CentOS下PHP安装Oracle扩展
Feb 15 PHP
php实现屏蔽掉黑帽SEO的搜索关键字
Apr 15 PHP
Yii获取当前url和域名的方法
Jun 08 PHP
Yii快速入门经典教程
Dec 28 PHP
php实现的debug log日志操作类实例
Jul 12 PHP
Yii2框架实现数据库常用操作总结
Feb 08 PHP
php实现的XML操作(读取)封装类完整实例
Feb 23 PHP
老生常谈文本文件和二进制文件的区别
Feb 27 PHP
PHP实现更改hosts文件的方法示例
Aug 08 PHP
Laravel5.5 动态切换多语言的操作方式
Oct 25 PHP
vmware linux系统安装最新的php7图解
Apr 14 #PHP
php7新特性的理解和比较总结
Apr 14 #PHP
PHP7新功能总结
Apr 14 #PHP
PHP7内核CGI与FastCGI详解
Apr 14 #PHP
Codeigniter里的无刷新上传的实现代码
Apr 14 #PHP
PHP7中I/O模型内核剖析详解
Apr 14 #PHP
浅析PHP7的多进程及实例源码
Apr 14 #PHP
You might like
杏林同学录(五)
2006/10/09 PHP
为你总结一些php信息函数
2015/10/21 PHP
PHP设计模式之简单投诉页面实例
2016/02/24 PHP
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
用方法封装javascript的new操作符(一)
2010/12/25 Javascript
获取非最后一列td值并将title设为该值的方法
2013/10/30 Javascript
推荐25个超炫的jQuery网格插件
2014/11/28 Javascript
javascript截取字符串小结
2015/04/28 Javascript
使用JS实现图片展示瀑布流效果的实例代码
2016/09/12 Javascript
Bootstrap CSS布局之按钮
2016/12/17 Javascript
详解JavaScript的闭包、IIFE、apply、函数与对象
2016/12/21 Javascript
聊聊JavaScript如何实现继承及特点
2017/04/07 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
简单实现jQuery手风琴效果
2017/08/18 jQuery
微信小程序实现YDUI的ScrollNav组件
2018/02/02 Javascript
如何在Vue.js中实现标签页组件详解
2019/01/02 Javascript
JavaScript常用工具方法封装
2019/02/12 Javascript
Openlayers学习之加载鹰眼控件
2020/09/28 Javascript
python client使用http post 到server端的代码
2013/02/10 Python
python检测lvs real server状态
2014/01/22 Python
pymongo给mongodb创建索引的简单实现方法
2015/05/06 Python
python内存动态分配过程详解
2019/07/15 Python
Python依赖包整体迁移方法详解
2019/08/15 Python
python中web框架的自定义创建
2019/09/08 Python
详解Python Opencv和PIL读取图像文件的差别
2019/12/27 Python
win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码
2020/01/16 Python
appium+python自动化配置(adk、jdk、node.js)
2020/11/17 Python
皮姆斯勒语言学习:Pimsleur Language Programs
2018/06/30 全球购物
Rodd & Gunn澳大利亚官网:新西兰男装品牌
2018/09/25 全球购物
泰国的头号网上婴儿用品店:Motherhood.co.th
2019/04/09 全球购物
美国领先的个性化礼品商城:Personalization Mall
2019/07/27 全球购物
实习生个人的自我评价
2013/12/08 职场文书
小班下学期个人总结
2015/02/12 职场文书
2015年119消防宣传日活动总结
2015/03/24 职场文书
物业前台接待岗位职责
2015/04/03 职场文书
带你了解CSS基础知识,样式
2021/07/21 HTML / CSS