PHP性能分析平台搭建(tideways + xhgui+ nginx + php7)

介绍

搭建一个PHP性能分析平台搭建,在不用改动你程序的代码,通过 nginx 为你程序上方在加一层监控层(产出固定日志),分析日志的出程序信息,进行性能分析优化

一、安装mongodb

此处省略1000字,自己查找文档

二、安装mongodb扩展

    wget http://pecl.php.net/get/mongodb-1.4.0.tgz    tar -zxvf mongodb-1.4.0.tgz    cd mongodb-1.4.0    phpize    ./configure --with-php-config=你的php-config路径 我的是在/usr/local/Cellar/php@7.1/7.1.16_1/bin/php-config    make    make install

三、安装tideways扩展

    git clone https://github.com/tideways/php-profiler-extension.git    cd php-profiler-extension    phpize    ./configure --with-php-config=你的php-config路径    make     make install

四、修改配置文件

    extension=tideways.so    tideways.auto_prepend_library=0    extension=mongodb.so

五、下载xhgui项目

    #https://github.com/perftools/xhgui  (汉化)    git clone https://github.com/perftools/xhgui.git    cd xhgui    php install.php(看下是否有vendor这个目录)    ##项目配置    #配置文件:config/default_config.php    #运行目录:webroot    #nginx rewrite规则    #   location / {      #       try_files $uri $uri/ /index.php$is_args$query_string;      #   }

六、配置文件修改

#xhgui 默认是采集1% ,如果是排查问题时还是希望能够100%采集会比较方便。进入xhgui源码目录,修改config/config.default.php文件,#平时仍然按1%的采样率采样,防止数据增长过快,当想调试时,就在URL中添加debug=1的参数即可。#在xhgui/config/config.default.php中,找到profiler.enable这里,按如下修改:#mongo//采样率'profiler.enable' => function() {    // url 中包含debug=1则百分百捕获    if(!empty($_GET['debug'])){        return true;    } else {        // 1%采样        return rand(1, 100) === 42;    }},//优化建议:可以给mongo数据表加上索引

七、使用&效果

//在需要的项目中的最开始,引入文件即可require "/dir/external/header.php";//操作项目,即可在xhgui平台中查看数据分析性能

效果图如下图

AtAvXkLVlc.pngDBBModRJ8r.png

更多PHP相关技术文章,请访问PHP教程栏目进行学习!

更多相关文章

  1. docker-compose部署php项目
  2. PHP高性能Excel扩展1.2.8发布,文件读取数据类型可控!
  3. tideways+toolkit对php代码进行性能分析
  4. PHP 高性能 Excel 扩展 1.2.7 发布
  5. 提高PHP性能效率的几个技巧
  6. PHP的Phar包原来性能这么强
  7. php 性能分析工具 xhprof
  8. 利用webhook使php项目自动部署
  9. php 解决项目中多个自动加载冲突问题

随机推荐

  1. Android 禁止Edittext弹出系统软键盘 的
  2. Android中的Button自定义点击效果实例代
  3. 移动开发书籍推荐
  4. android软键盘事件处理
  5. android中BroadCastReceiver使用(广播的
  6. 详解Android中的屏幕方向
  7. Android(安卓)唯一识别码
  8. MVVM在Android中的初学之路
  9. Windows环境下Android(安卓)Studio v1.0
  10. android在文本中添加超链接