要分析 PHP 程序的性能,花费时间或 CPU 的使用情况等等,可以使用 PHP APD(Advanced PHP debugger) 来快速达成。
注:此篇是于 Debian / Ubuntu Linux 安装
PHP 性能分析工具 APD 安装方式
PHP APD 安装方式,理论上应该要很简单,使用 pecl install apd 即可。
但是 APD 已经很长一段时间没有维护了,所以 pecl install、download install 等等,都无法顺利完成。(找了不少 patch 都无法正常 compile)
最后找到这个「ZeWaren/pecl-apd - PECL's PHP debugger and profiler, patched for PHP 5.5」,直接有 patch 完成的版本,就可以轻易使用。
PHP APD 安装步骤
sudo apt-get install php5-dev
git clone https://github.com/ZeWaren/pecl-apd
cd pecl-apd/
phpize
configure
make
sudo make install
Installing shared extensions: /usr/lib/php5/20131226/
sudo chmod 644 /usr/lib/php5/20131226/apd.so
sudo vim /etc/php5/mods-available/apd.ini # 写入下述内容
; configuration for php APD module
; priority=10
zend_extension=apd.so
apd.dumpdir =/tmp/apd/trace
apd.statement_tracing=0
mkdir -p /tmp/apd/trace # 将 log 写到这边
sudo chmod -R 777 /tmp/apd/
sudo php5enmod apd # 启用 apd
sudo service apache2 reload
在想要分析 profiling 的程序最前面加上下述即可:
apd_set_pprof_trace();
// profiling code...
?>
再来程序运行一次后,会产生 pprof.xxxxx.0,再使用 pprofp 来查看即可。
pprofp -c /tmp/pprof.22141.0
pprofp -R /tmp/pprof.22141.0
pprofp -r /tmp/pprof.22141.0
pprofp -u /tmp/pprof.22141.0
相关网页