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 相关文章推荐
php 特殊字符处理函数
Sep 05 PHP
PHP6 mysql连接方式说明
Feb 09 PHP
创建数据库php代码 用PHP写出自己的BLOG系统
Apr 12 PHP
PHP学习笔记之二 php入门知识
Jan 12 PHP
php结合表单实现一些简单功能的例子
Jun 04 PHP
PHP 获取远程文件大小的3种解决方法
Jul 11 PHP
PHP中使用file_get_contents post数据代码例子
Feb 13 PHP
php读取der格式证书乱码解决方法
Jun 22 PHP
php使用MySQL保存session会话的方法
Jun 26 PHP
PHP使用栈解决约瑟夫环问题算法示例
Aug 27 PHP
PHP上传文件及图片到七牛的方法
Jul 25 PHP
php7中停止php-fpm服务的方法详解
May 09 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
百事可乐也出咖啡了 双倍咖啡因双倍快乐
2021/03/03 咖啡文化
15个小时----从修改程序到自己些程序
2006/10/09 PHP
Thinkphp连表查询及数据导出方法示例
2016/10/15 PHP
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
javascript+mapbar实现地图定位
2010/04/09 Javascript
Jquery动态添加及删除页面节点元素示例代码
2014/06/16 Javascript
jQuery响应鼠标事件并隐藏与显示input默认值
2014/08/24 Javascript
如何在MVC应用程序中使用Jquery
2014/11/17 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
2015/09/22 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
JavaScript编写九九乘法表(两种任选)
2017/02/04 Javascript
JavaScript基础进阶之数组方法总结(推荐)
2017/09/04 Javascript
JointJS JavaScript流程图绘制框架解析
2019/08/15 Javascript
微信小程序列表时间戳转换实现过程解析
2019/10/12 Javascript
Vue.js 中制作自定义选择组件的代码附演示demo
2020/02/28 Javascript
Vue使用自定义指令实现拖拽行为实例分析
2020/06/06 Javascript
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
用Python实现web端用户登录和注册功能的教程
2015/04/30 Python
python验证码识别的实例详解
2016/09/09 Python
请不要重复犯我在学习Python和Linux系统上的错误
2016/12/12 Python
Python实现学生成绩管理系统
2020/04/05 Python
Django之PopUp的具体实现方法
2019/08/31 Python
PyCharm使用Docker镜像搭建Python开发环境
2019/12/26 Python
澳大利亚女装精品店:Alannah Hill
2020/07/29 全球购物
将一个数的从第5位开始的7个数取出,其余位置0
2016/05/26 面试题
中科方德软件测试面试题
2016/04/21 面试题
大学运动会入场词
2014/02/22 职场文书
社区消防工作实施方案
2014/03/21 职场文书
党员承诺书怎么写
2014/05/20 职场文书
创先争优活动党员公开承诺书
2014/08/29 职场文书
儿园租房协议书范本
2014/12/02 职场文书
2014年小学安全工作总结
2014/12/04 职场文书
会计人员岗位职责
2015/02/03 职场文书
Django集成富文本编辑器summernote的实现步骤
2021/05/31 Python
一篇文章带你复习java知识点
2021/06/28 Java/Android
CentOS7和8下安装Maven3.8.4
2022/04/07 Servers