php7使用xhprof测试php性能
Posted 追风逐月
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php7使用xhprof测试php性能相关的知识,希望对你有一定的参考价值。
1 背景
- php的xhprof扩展Facebook不再进行更新和维护,因为Faceboo已经全面使用HHVM,不再使用PHP zend引擎。
- xhprof不支持新版本的PHP(PHP7),tideways扩展是从xhprof项目fork下来继续进行维护的,目前支持PHP 7.2, 7.1, 7.0, 5.6 and 5.5 。
- tideways是开源项目,它收费的只是UI服务,其实 xhgui完全可以满足我们日常的需求
2 功能
tideways是用来测试PHP性能的扩展,它能获取PHP执行的整个过程中调用的函数、调用函数次数、执行时间、CPU时间、内存占用、内存峰值、总执行时间、总CPU时间、总内存占用、总内存峰值等数据,通过以上数据进行分析,找出PHP的性能瓶颈、分析PHP执行过程等。
3 优点
- tideways是一个PHP扩展,结合xhgui,无需在PHP代码中进行埋点来监控代码
- 可以设置执行频率(例如1/100),无需每个请求都生成执行日志,从而导致性能损失;也可以主动控制是否生成执行日志,通过请求参数来控制(debug=1)
- 有简单直接的UI对数据进行转化
- 可以自由的搭配条件进行数据筛选,例如分析某个特定的接口,分析某个时间段的接口请求情况等
4 缺点
虽然是非侵入式的,但是如果对每个接口生成执行日志,那么对CPU和内存的消耗是不可忽略的。
5 实现原理
以上是关于php7使用xhprof测试php性能的主要内容,如果未能解决你的问题,请参考以下文章