St.*_*son 43
有很多方法可以做到这一点.我个人一直喜欢以下列方式使用microtime:
// Start of code
$time = microtime(true); // Gets microseconds
// Rest of code
// End of code
echo "Time Elapsed: ".(microtime(true) - $time)."s";
Run Code Online (Sandbox Code Playgroud)
这将为您提供微秒精度.
如果您正在编写命令行脚本(如Facebook谜题),您可以使用时间.
time php dancebattle.php ~/input.dat
Win
real 0m0.152s
user 0m0.142s
sys 0m0.012s
Run Code Online (Sandbox Code Playgroud)
我忘记了监控页面加载时间的方法(来自浏览器).您可以使用Firebug(适用于Firefox)的NET选项卡来执行此操作.它将让您观看各种文件加载(AJAX,JS,CSS,图像等).
Pas*_*TIN 11
最简单的是Apache Bench (被称为ab
),它随Apache提供:
似乎适合幻灯片上显示的那种非常简单的报告.
(它确实报告的不止于此)
如果您的需求更复杂,Siege可能是一个不错的选择.
Siege的一个有趣的事情是它可以从文件中获取一个URL列表,而不是只使用一个.
这些工具的一个有趣之处在于,您不仅仅测量执行特定代码部分所花费的时间(就像您microtime
在PHP代码中直接使用那样),但是您需要花费整个时间来提供服务.页.
此外,它可以不只是PHP代码进行基准测试,因为它正在处理HTTP请求,而不是代码本身.
$ time curl http://www.example.com/
Run Code Online (Sandbox Code Playgroud)
请注意,它会占用整个请求,包括网络延迟.但那可能是你想要的吗?