发布于2021-03-11 05:07 阅读(885) 评论(0) 点赞(17) 收藏(2)
我想知道对我的PHP脚本进行基准测试的最佳方法是什么。cron作业,网页或Web服务无关紧要。
我知道我可以使用microtime,但这是否真的为我提供了PHP脚本的实时性?
我想测试和基准化PHP中执行相同功能的不同函数。例如,preg_match
vsstrpos
或domdocument
vspreg_match
或preg_replace vs str_replace`
网页示例:
<?php
// login.php
$start_time = microtime(TRUE);
session_start();
// do all my logic etc...
$end_time = microtime(TRUE);
echo $end_time - $start_time;
这将输出:0.0146126717(一直在变化-但这是我得到的最后一个)。这意味着执行PHP脚本大约需要0.015。
有没有更好的办法?
如果您确实想对真实世界的代码进行基准测试,请使用Xdebug和XHProf之类的工具。
Xdebug非常适合您在开发/暂存中使用,而XHProf是一款出色的生产工具,可以在那里安全地运行它(只要您阅读了说明)。任何单个页面加载的结果都不会像看到服务器在执行一百万其他事务以及资源变得稀缺的同时如何执行代码那样具有相关性。这就提出了另一个问题:您是否在CPU上遇到瓶颈?内存?输入/输出?
您还需要关注的不仅仅是脚本中运行的代码,而是如何提供脚本/页面。您正在使用什么Web服务器?举例来说,我可以使nginx + PHP-FPM认真执行mod_php + Apache,这反过来会因使用良好的CDN提供静态内容而被淘汰。
接下来要考虑的是您要优化的内容?
前者可以通过gzip压缩发送到浏览器的所有资源的方式来获得帮助,但是这样做(在某些情况下)可能使您进一步远离实现后者。
希望以上所有内容可以帮助表明,精心隔离的“实验室”测试不会反映您在生产中会遇到的变量和问题,并且您必须确定您的高级目标是什么,然后才能达到目标,在前往微观/过早优化路线前往地狱之前。
作者:黑洞官方问答小能手
链接:http://www.phpheidong.com/blog/article/930/63c7e0b39651e49095d4/
来源:php黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 php黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-4
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!