toolkit是tideway官方提供的性能分析的命令行工具。如果你只是本地开发调试接口性能,不想安装xhgui,那么使用toolkit就足够了
安装 安装tideways拓展git clone https://github.com/tideways/php-xhprof-extension.git cd php-profiler-extension phpize ./configure make && make install
在php.ini中加入
extension=tideways_xhprof.so
重启php-fpm
service php-fpm restarttoolkit安装
go get github.com/tideways/toolkit # 安装graphviz # macOS brew install graphviz # ubuntu sudo apt-get install -y graphviz设置别名
alias tk=toolkittideways+toolkit 代码埋点
在程序入口中加入
if (extension_loaded("tideways_xhprof")) { tideways_xhprof_enable(TIDEWAYS_XHPROF_FLAGS_CPU | TIDEWAYS_XHPROF_FLAGS_MEMORY); } // 你的代码 application(); if (extension_loaded("tideways_xhprof")) { $data = tideways_xhprof_disable(); file_put_contents( sprintf("%s/app.xhprof", "/path/to"), json_encode($data) ); }
执行下代码,然后就会生成/path/to/app.xphrof
性能分析tk analyze-xhprof /path/to/app.xphrof
默认性能分析的指标是wt_excl,其他的指标有
wt 调用时长,包括子函数
excl_wt 调用时长,不包括子函数
cpu CPU调用时长,包括子函数
excl_cpu CPU调用时长,不包括子函数
memory 内存消耗(字节),包括子函数
excl_memory 内存消耗(字节),不包括子函数
io io时长,包括子函数
excl_io io时长,不包括子函数
生成性能瓶颈图tk generate-xhprof-graphviz /path/to/app.xhprof dot -Tpng callgraph.dot > callgraph.png
显示的指标有
函数名
Inc 函数运行时间,包括子函数
Excl 函数运行时间,不包括子函数
total calls 总调用次数
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/30759.html
摘要:性能被动分析工具之加的安装实践前言最近一直想做个接口性能分析,但是手打实在能把人给累死。怎么办呢想到之前有写过一篇我所知道的相关调优汇总,里面有一个的调优方式。但是使用它酷炫的需要付费,扩展则不需要。 PHP性能被动分析工具之xhgui加tideways的安装实践 By:0x584A Date:2016-11-23 17:55:42 前言 最近一直想做个接口性能分析,但是手打log实在...
使用phpAnalysis打造PHP应用非侵入式性能分析器,查找PHP性能瓶颈。 什么是phpAnalysis phpAnalysis是一款轻量级非侵入式PHP应用性能分析器,适用于开发、测试及生产环境部署使用,方便开发及测试工程师诊断性能问题: 通过tideways收集PHP程序单步运行过程中所有的函数调用时间及CPU内存消耗等信息 信息永久存储到MySQL数据库 分析每个请求执行的信息,帮助...
摘要:简介基于,以图形化方式显示结果。为啥不在里面配置而是因为我这是本地调试,重在分析某一个接口,而不是观测线上的正式环境。还有这个原因备注重启视个人重启方式而定,我的重启方式是这样的参考 简介 xhgui基于xhprof,以图形化方式显示结果。简单点就是更加直观。采用tideways + xhgui组合的原因是我的PHP版本是7,而xhprof不支持,(虽然我安装了一个支持php7的xhp...
摘要:上一篇文章里,我们介绍了如何基于扩展来分析性能,并记录到日志里,最后使用扩展自带的在里展示出来。本次测试中,实际使用了扩展切换为扩展后里看不到数据,原因未知。虽然来自但已经很久不更新,官方源已经显示此包已废弃,不再维护。 上一篇文章里,我们介绍了如何基于xhprof扩展来分析PHP性能,并记录到日志里,最后使用xhprof扩展自带的UI在web里展示出来。本篇文章将讲述2个知识点: ...
摘要:参考配置添加,告诉程序在执行前要调用的服务或者也可以在修改配置文件,告诉程序在执行前要调用的服务参考链接 showImg(https://segmentfault.com/img/bVbt7t1?w=2880&h=2608); 推荐阅读 Tideways、xhprof 和 xhgui 打造 PHP 非侵入式监控平台 超全的设计模式简介(45种) design-patterns-for...
阅读 3803·2021-09-27 13:56
阅读 860·2021-09-08 09:36
阅读 746·2019-08-30 15:54
阅读 578·2019-08-29 17:29
阅读 913·2019-08-29 17:21
阅读 1662·2019-08-29 16:59
阅读 2725·2019-08-29 13:03
阅读 2946·2019-08-29 12:47