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 相关文章推荐
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
Dec 06 PHP
PHP实现Socket服务器的代码
Apr 03 PHP
一步一步学习PHP(2)――PHP类型
Feb 15 PHP
php获取当前网址url并替换参数或网址的方法
Jun 06 PHP
Smarty局部缓存的几种方法简介
Jun 17 PHP
学习php开源项目的源码指南
Dec 21 PHP
PHP中使用break跳出多重循环代码实例
Jan 21 PHP
PHP超牛逼无限极分类生成树方法
May 11 PHP
php代码架构的八点注意事项
Jan 25 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
Jun 19 PHP
PHP cURL获取微信公众号access_token的实例
Apr 28 PHP
php中加密解密DES类的简单使用方法示例
Mar 26 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
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
thinkphp分页集成实例
2017/07/24 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
2020/04/14 PHP
Jquery中Ajax 缓存带来的影响的解决方法
2011/05/19 Javascript
JQuery异步加载无限下拉框级联功能实现示例
2014/02/19 Javascript
new Date()问题在ie8下面的处理方法
2014/07/31 Javascript
javascript trim函数在IE下不能用的解决方法
2014/09/12 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
javascript实现添加附件功能的方法
2015/11/18 Javascript
Javascript中常用的检测方法小结
2016/10/08 Javascript
jQuery中layer分页器的使用
2017/03/13 Javascript
利用vue.js插入dom节点的方法
2017/03/15 Javascript
Vue.js实战之使用Vuex + axios发送请求详解
2017/04/04 Javascript
Angularjs在360兼容模式下取数据缓存问题的解决办法
2017/06/22 Javascript
vue学习笔记之作用域插槽实例分析
2020/02/01 Javascript
[01:14:34]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第一局
2016/02/28 DOTA
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
简单说明Python中的装饰器的用法
2015/04/24 Python
简述Python中的面向对象编程的概念
2015/04/27 Python
Python实现基于权重的随机数2种方法
2015/04/28 Python
全面解析Python的While循环语句的使用方法
2015/10/13 Python
python生成tensorflow输入输出的图像格式的方法
2018/02/12 Python
python如何为创建大量实例节省内存
2018/03/20 Python
浅谈python下tiff图像的读取和保存方法
2018/12/04 Python
numpy linalg模块的具体使用方法
2019/05/26 Python
Python unittest框架操作实例解析
2020/04/13 Python
公共汽车、火车和飞机票的通用在线预订和销售平台:INFOBUS
2019/11/30 全球购物
SQL里面如何插入自动增长序列号字段
2012/03/29 面试题
公务员政审个人鉴定
2014/02/25 职场文书
高中英语演讲稿范文
2014/04/24 职场文书
《李广射虎》教学反思
2014/04/27 职场文书
心理咨询承诺书
2014/05/20 职场文书
护士求职简历自我评价
2015/03/10 职场文书
农民工工资支付承诺书
2015/05/04 职场文书
朋友离别感言
2015/08/04 职场文书
Django模型层实现多表关系创建和多表操作
2021/07/21 Python