以測試LB首頁代碼為例子
作個t.cgi文件,里面如下
##################
#!/usr/bin/perl
use Benchmark;
$TT0 = new Benchmark;
do "leoboard.cgi";
#################完
如果原代碼leoboard.cgi前面有use Benchmark;
$TT0 = new Benchmark;
請先刪除掉
程序結尾加上
$TT1 = new Benchmark;
$td = Benchmark::timediff($TT1, $TT0);
$td = Benchmark::timestr($td);
$td =~ /(\d+)\s*wallclock secs \(\s*?(\d*?\.\d*?)\s*usr\s*\+\s*(\d*?\.\d*?)\s*sys/i;
my $alltimas=($2+$3)*1000;
print "<center><font color=$cpudispcolor>程序占用 CPU 時間:$2 usr + $3 sys 合計運行時間 $alltimas 毫秒";
然后,本機執行http://localhost/lb5000xp/cgi-bin/t.cgi
普通的內部測試方法忽略了腳本最初裝載和初始化的時間,兩種方法測試差別較大
這個時間“毫秒級”一閃而過,本機觀察肉眼是察覺不明顯的,但對于服務器來說,在線人數多了可能就會明顯了,但此測試結果反映不出來網絡傳輸所占的時間,那是另一回事
很多asp 和php 程序的測試方法可能都各不相同,沒有直接的可比性。不同的環境測試結果也不一樣,從外部測的結果要更全面一些。
還有,我理解資源占用和運行速度是兩個概念,假設你的腳本占用內存較多,但代碼效率也可能比較高,造成單機測試速度也許并不慢。但放在服務器上在線人數多了問題就來了。所以,設計代碼的時候,盡量節省你的腳本內存使用為好。