潮流+工具箱对php代码进行性能分析的案例

  介绍

小编给大家分享一下潮流+工具箱对php代码进行性能分析的案例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

工具包是潮流官方提供的性能分析的命令行工具。如果你只是本地开发调试接口性能,不想安装xhgui,那么使用工具箱就足够了。

<>强安装

<强>安装潮流拓展

git克隆https://github.com/tideways/php-xhprof-extension.git   cd php-profiler-extension   phpize   ./configure   使,,使安装

在php。ini中加入

=tideways_xhprof延伸。所以

重启php-fpm

服务php-fpm重启

<强>工具包安装

去github.com/tideways/toolkit   #安装graphviz   # macOS   酿造安装graphviz   # ubuntu   sudo apt-get安装- y graphviz

设置别名

别名tk=工具包

<>强潮流+工具箱

<强>代码埋点

在程序入口中加入

如果(extension_loaded (& # 39; tideways_xhprof& # 39;)) {   tideways_xhprof_enable (TIDEWAYS_XHPROF_FLAGS_CPU | TIDEWAYS_XHPROF_FLAGS_MEMORY);   }//你的代码   应用程序();   如果(extension_loaded (& # 39; tideways_xhprof& # 39;)) {   $ data=https://www.yisu.com/zixun/tideways_xhprof_disable ();   写入   sprintf (' % s/应用程序。xhprof”、“/道路/去”),   json_encode(元数据)   );   }

执行下代码,然后就会生成/道路//应用程序。xphrof

<>强性能分析

tk analyze-xhprof/道路//应用程序。xphrof

潮流+工具箱对php代码进行性能分析的案例

默认性能分析的指标是wt_excl,其他的指标有

1。wt调用时长,包括子函数

2。excl_wt调用时长,不包括子函数

3。cpu cpu调用时长,包括子函数

4。excl_cpu CPU调用时长,不包括子函数

5。内存内存消耗(字节),包括子函数

6。excl_memory内存消耗(字节),不包括子函数

7。io io时长,包括子函数

8。excl_io io时长,不包括子函数

<强>生成性能瓶颈图

tk generate-xhprof-graphviz/路径//app.xhprof   点-Tpng callgraph。点比;callgraph。png

潮流+工具箱对php代码进行性能分析的案例

<强>显示的指标有

1。函数名

2。公司函数运行时间,包括子函数

3。Excl函数运行时间,不包括子函数

4。总电话总调用次数

潮流+工具箱对php代码进行性能分析的案例