需要测试下 代码的性能,使用了 xhprof + xhgui

1. 下载xhprof,

这里下载吧 :https://github.com/longxinH/xhprof.git

2, 安装

cd xhprof/extension/

/usr/local/php/bin/phpize ./configure --with-php-config=/opt/php-7.0.14/bin/php-config --enable-xhprof
make&&make install
 
3.修改 php.ini 文件

php -i | grep php.ini 
[xhprof]
extension=xhprof.so
xhprof.output_dir=/data/www/xhprof/save_output_dir //该目录自由定义即可,用来保存xhprof生成的源文件
重启php-fpm
kill -USR2 `cat /opt/php-7.0.14/var/run/php-fpm.pid`
//切换到下载的 xhprof 目录
cp -r xhprof/xhprof_html ROOT_PATH/
cp -r xhprof/xhprof_lib ROOT_PATH/
xhprof_enable(); //你需要分析的代码
$xhprof_data = xhprof_disable();
include_once ROOT_PATH.'/xhprof_lib/utils/xhprof_lib.php';
include_once ROOT_PATH . '/xhprof_lib/utils/xhprof_runs.php';
$xhprof_runs = new XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_test"); //将run_id保存起来或者随代码一起输出
yum install graphviz

查看结果
$host_url/xhpfrof_html/index.php?run=58d3b28b521f6&source=xhprof_test

  1. Calls / Call Count:函数被调用的次数
  2. Incl. Wall Time / Wall Time:执行该函数(包括子函数)耗费的时间
  3. Incl. MemUse / Memory Usage:该函数(包括子函数)占用的内存
  4. Incl. PeakMemUse / Peak Memory Usage:函数(包括子函数)占用内存的峰值
  5. Incl. CPU / CPU:执行该函数(包括子函数)花费的CPU时间
  6. Excl. Wall Time / Exclusive Wall Time:函数本身(不包括子函数)耗费的时间
  7. Excl. MemUse / Exclusive Memory Usage:函数本身(不包括子函数)占用的内存
  8. Excl. PeakMemUse / Exclusive Peak Memory Usage:函数本身(不包括子函数)耗费内存的峰值
  9. Exclusive CPU:函数本身(不包括子函数)花费的CPU时间

php7下 xhprof安装与使用的更多相关文章

  1. centos7下编译安装php-7.0.15(PHP-FPM)

    centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...

  2. Ubuntu 16.04下编译安装Apache2.4和PHP7结合

    Ubuntu 16.04下编译安装Apache2.4和PHP7结合,并安装PDOmysql扩展. 1.编译安装apache2.4.20 1 第一步: ./configure --prefix=/usr ...

  3. PHP7 下安装 memcache 和 memcached 扩展

    转载自:https://www.jianshu.com/p/c06051207f6e Memcached 是高性能的分布式内存缓存服务器,而PHP memcache 和 memcached 都是 Me ...

  4. 【安装PHP】如何在openSUSE42.1下编译安装PHP7

    首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog. 里面说到是否会去使用PHP7, ...

  5. centos7.5环境下编译安装php7.0.30并安装redis和mongo扩展

    .安装php7..30的脚本 # vim install_php.sh #!/bin/bash # 安装基本依赖 yum install -y gcc gcc-c++ htop telnet ioto ...

  6. xhprof 安装详解

    准备工作1.xhprof不支持php7,需要php7以下版本2.php扩展模块xhprof下载地址: http://pecl.php.net/get/xhprof-0.9.4.tgz xhprof安装 ...

  7. 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展

    上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...

  8. 搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展

    上一篇:搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展 一.安装MongoDB 1.创建mongodb用户组和用户 groupadd mongodb useradd -r -g ...

  9. Linux下php安装Redis扩展

    说明: 操作系统:CentOS php安装目录:/usr/local/php php.ini配置文件路径:/usr/local/php7/etc/php.ini Nginx安装目录:/usr/loca ...

随机推荐

  1. springboot @Configuration

    有了@Configuration,原来的springBean的配置文件可以去掉了, 原来在application.xml中配置的bean可以配置在@Configuration注解的来类中,使用@Bea ...

  2. TCP/IP详解 卷一(第十四章 DNS:域名系统)

    域名系统(DNS Domain Name System)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息. 从应用角度上看,对DNS的访问时通过 ...

  3. 关于Java性能的9个谬论

    http://www.infoq.com/cn/articles/9_Fallacies_Java_Performance Java的性能有某种黑魔法之称.部分原因在于Java平台非常复杂,很多情况下 ...

  4. CALayer的contentsRect

    contentsRect 想像下contentsRect作为层内容的可视区域.内容的矩形区域(x,y,width,height)也是绑定到层的框架上的.contentRect是一个比例值,而不是屏幕上 ...

  5. MvcPager源代码—PagerOptions.cs

    public class PagerOptions    {        public PagerOptions()        {            AutoHide = true;     ...

  6. MVC| Razor 布局-模板页 | ViewStart.cshtml

    来自:http://blog.csdn.net/fanbin168/article/details/49725175 这个图就看明白了 _ViewStart.cshtml 视图文件的作用  _View ...

  7. SpringCloud系列一:微服务理解

    1. 单体架构 一个归档包(例如war格式)包含所有功能的应用程序,通常称为单体应用. > 复杂性高:模块多,模块的边界模糊,依赖关系不清楚,代码质量参差不齐. > 技术债务:随着时间推移 ...

  8. Android模拟屏幕点击input tap替代解决方案

    动机解释 本来直接使用 adb shell -> input 即可模拟 键盘事件,触屏事件keyevent ,text,tap 但是手上的这台目标Android机4.0.3系统的input只支持 ...

  9. Data Guard配置

    >> from zhuhaiqing.info 确认主库处于归档模式下 SQL>archive log list; Database log mode Archive Mode Au ...

  10. Java内存模型FAQ(一) 什么是内存模型

    原文:http://www.cs.umd.edu/~pugh/java/memoryModel/jsr-133-faq.html 第一章 译者:方腾飞 在多核系统中,处理器一般有一层或者多层的缓存,这 ...