php版本:php7

xhprof:

xhprof是php5.*下很好的性能测试工具,配合xhprof_html能够图形显示测试结果,基本够用,

但已经没人维护了。

tideways:

在php7下,xhprof不再兼容,于是有个tideways,基于xhprof开发,它是收费的。

安装后模块名是tideways,用php --re tideways可以看到很多ini配置,参数和方法,

此模块很强大,有很多方法和配置用来连接官方服务器,用于收费用户的后台显示管理。

同样,也可以配合xhprof_html显示结果,也有自己的一套图形

tideways_xhprof:

它有个开源分支,tideways_xhprof,是免费的,和tideways不同的是,它主要是为了兼容xhprof,

没有官方那么多配置,安装后模块名是tideways_xhprof,方法也就两个,tideways_xhprof_enable()和

tideways_xhprof_disable(),图形显示和tideways相同。

这是一个使用demo:

<?php

//这个require是用与cli下执行php脚本,用xhgui显示。
//require_once '/home/liuxuzzz/bin/xhgui-branch/external/header.php'; tideways_xhprof_enable(TIDEWAYS_XHPROF_FLAGS_MEMORY | TIDEWAYS_XHPROF_FLAGS_MEMORY_MU | TIDEWAYS_XHPROF_FLAGS_MEMORY_PMU |
TIDEWAYS_XHPROF_FLAGS_CPU | TIDEWAYS_XHPROF_FLAGS_NO_BUILTINS); function microtime_float()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$sec + (float)$usec);
}
$start_time = microtime_float();
sleep(1);
$end_time = microtime_float(); $data = tideways_xhprof_disable(); require '/home/liuxuzzz/bin/xhprof/xhprof_lib/utils/xhprof_lib.php';
require '/home/liuxuzzz/bin/xhprof/xhprof_lib/utils/xhprof_runs.php';
// 注意此处的"/tmp",因为如果没有此参数,XHProfRuns_Default()会使用xhprof.output_dir参数,
// 但是xhprof我没有安装,所以配置了没用,导致执行会报warning
$xhprofRuns = new XHProfRuns_Default("/tmp");
$runId = $xhprofRuns->save_run($data, 'xhprof_test');
echo 'http://localhost/xhprof/index.php?run=' . $runId . '&source=xhprof_test' . "\n";

xdebug:

老牌测试工具,很好用,测试环境用这个很方便,但线上用这个性能就太耗了。

php性能调试工具介绍的更多相关文章

  1. Linux性能工具介绍

    l  Linux性能工具介绍 p  CPU高 p  磁盘I/O p  网络 p  内存 p  应用程序跟踪 l  操作系统与应用程序的关系比喻为“唇亡齿寒”一点不为过 l  应用程序的性能问题/功能问 ...

  2. DB2数据库性能优化介绍

    DB2数据库性能优化介绍 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 前段时间,我从CSDN得到了这本书<DB2数据库性能调整和优化(第2版)& ...

  3. Linux环境下的GCC编译器与GDB调试工具介绍

    假如现在我们有如下代码需要编译运行和调试.文件名为:test.c #include <stdio.h> int main() { int day, month, year, sum, le ...

  4. 九大Java性能调试工具,必备至少一款

    九款Java性能调试工具,有什么更好.更多的工具,欢迎补充. NetBeans Profiler NetBeans中可以找到NetBeans Profiler. NetBeans分析器是NetBean ...

  5. Linux下性能调试工具运维笔记

    作为一名资深的linux运维工程师,为方便了解和追求服务器的高性能,如cpu.内存.io.网络等等使用情况,要求运维工程师必须要熟练运用一些必要的系统性能调试工具,liunx下提供了众多命令方便查看各 ...

  6. vmstat性能分析介绍

    vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况.这个命令是我查看Linux/Unix最 ...

  7. chrome自带调试工具介绍

    Chrome浏览器不仅可以调试页面.JS.请求.资源.cookie,还可以模拟手机进行调试等等,为开发者提供了很多方便,下面就介绍一下我常用到的调试技巧. 1.chrome浏览页面常用快捷键 Ctrl ...

  8. WEB常用前端开发调试工具介绍

    只要是设计开发,就需要进行调试,尽管相对来说,前端的调试要简单一些,但使用一些调试工具或插件还是能提高你的工作效率.下面是一些主要用于IE浏览器环境和Firefox浏览器环境等的调试工具简介. 一.I ...

  9. Linux下性能监控工具介绍

    本章解释如何使用适用于Linux的大量性能工具及每个工具中信息的意义.即使已经使用top或者sar,也可能从本章学到相关知识. 应该养成使用这些工具的习惯.当然要知道如何诊断性能问题,但也应该定期寻找 ...

随机推荐

  1. 安装一台Linux练习机前的考虑——主机规划与磁盘分区

    要安装一台Linux主机并不是那么简单的事,我们必须要针对distributions的特性.服务器软件的能力.未来的升级需求.硬件扩充性需求等来考虑,对于磁盘分区.文件系统.Linux操作较频繁的目录 ...

  2. 淘宝RubyGems和NPM镜像的使用

    题记:前不久在windows下配置jekyll环境时,需要用到gem,一个ruby的管理包,类似于管理nodejs包的npm.安装ruby环境后,使用gem安装包时请求国外的[https://ruby ...

  3. java对象-String的用法

    以某字符串结尾:“”.endwith("") 字符串比较:equals(anotherstr) 命名遵循英文语法

  4. struts2的验证

    1.原理 当浏览器向服务器提交表单数据时,在服务器端需要对表单数据的有效性进行校验. “校验方法”会在“业务方法”之前调用. 2.实现验证的两种方式 struts2校验的两种实现方法: 1. 手工编写 ...

  5. 子查询 做where条件 做 from的临时表 ,做select的一个字段 等

    子查询 做where条件 做 from的临时表 ,做select的一个字段 等

  6. 【题解】ZJOI2008骑士

    树型打牌:洛谷P2607 这道题目一开始没有想到解法,只是想到没有上司的舞会,觉得十分的类似呀. 之后发现:n个点,n条边,只要删去一条边,就变成了和上题一模一样的做法. 那么考虑删去的这条边,实际上 ...

  7. [CF475E]Strongly Connected City 2

    题目大意:给一张$n(n\leqslant2000)$个点的无向图,给所有边定向,使定向之后存在最多的有序点对$(a,b)$满足从$a$能到$b$ 题解:先把边双缩点,因为这里面的点一定两两可达. 根 ...

  8. [LG4890]Never·island DP

    ---题面--- 题解: 感到此题非常的神奇...看了大佬的题解才懂的. 首先建模: 先把所有队伍的出去回来时间都放在一个数组里,然后排序,从左到右扫一边,给每个队伍都建一个带权点,进行如下操作: ( ...

  9. [NOIP2002] 字串变换 宽搜+深度优化

    这道题硬是让我用STL水过.......而且题解里说的什么双向宽搜,交替扩展............... 这道题反正,STL用就用吧,但是状态数可以卡到千亿级别,因为这个东西是阶乘扩展的,然后我们发 ...

  10. gcc用法小记

    By francis_hao    Feb 13,2017 概要 这里只列出了最常用的选项   选项解释 -c|-S|-E 启动gcc编译器时,它会顺序执行预处理.编译.汇编和连接(四个阶段的详细介绍 ...