我在 C 中开发了一个小巧的网络服务器,并希望评估其性能。为此,我正在做以下事情:
在以下场景中测量套接字建立时间,文件传输时间(对于随机大小的文件)和套接字拆除时间:
这应该给我吞吐量/带宽......我计划在一堆计算机上设置它并测量所有内容......对于客户端部分,我正在使用PHP并且正在使用简单的时序以下列方式运作:
<?php
$time_start = microtime_float();
// COMMAND TO PROFILE
$time_end = microtime_float();
$time = $time_end - $time_start;
echo "Task took $time seconds\n";
?>
我是否应该衡量哪些其他指标可以为我提供一些有价值的见解?
答案 0 :(得分:3)
答案 1 :(得分:2)
嗯,我不确定它是基准请求性能的最佳方法。看一下Apache发行版提供的ab,这是一个基本的工具,但你应该能够在同一台服务器上运行它,并获得更准确的请求时间基准。它还会为您提供一系列其他指标。
答案 2 :(得分:2)
尝试使用xDebug进行性能分析,然后下载并安装webgrind。
您:
我怀疑你可以轻松地使用PHP分析类来收集这些信息
There are plently of tutorials to get you started.
alt text http://jokke.dk/media/2008-webgrind/webgrind_large.png
答案 3 :(得分:1)
内存使用可能会很好。您可能希望查看调用某些函数的频率,以及查看要优化的内容。
此外,Facebook推出了一款名为XHProf的工具,可能值得一看:http://mirror.facebook.net/facebook/xhprof/doc.html。有关其用法的一些其他说明,请访问:http://techportal.inviqa.com/2009/12/01/profiling-with-xhprof/。