JSP、PHP詳細效能測試

來源:互聯網
上載者:User

本測試資料真實,但只做為參考。歡迎大家討論。

除做比較外,也可供PHP,JSP程式員參考,以便最佳化自己的程式。

一.算術運算

a.測試標準

迴圈N次,並做整型自加運算。

b.測試

測試代碼:

測試類型 JSP int整型 JSP long整型 JSP long整型2 PHP PHP2
測試代碼 int i=0;
while (i<XXXX)
{
i++;
}
long l=0;
while (l<XXXX)
{
l++;
}
long l=0;
while (l<XXXX)
{
l=l+1;
}
$i=0;
while ($i<XXXX)
{
$i++;
}
$i=0;
while ($i<XXXX)
{
$i=$i+1;
}

測試結果(單位:毫秒)

測試結果說明:m-n表示主要波動範圍介於m和n之間;n表示出現次數非常之多的數值或平均值,m (x,y)表示偶爾會出現x,y。以下相同。

XXXX取值 JSP int整型 JSPlong整型 JSPlong整型2 PHP PHP2
1000 0 0 0 0-1 0-1
10000 0 0 0 3-4 6-7
100000 0 0 0(16,32) 34-35 51-52
1000000 0(10) 0(16,32) 0(16,32) 348-368 527-534
10000000 0(13) 16-32 32-78 3547-3585 5239-5390
100000000 0(16) 266-281 265-281 35309-35486
1000000000 0(16,743) 2625-2676 2203-3687

c.結論

Java的算術運算,最佳化得很好,估計是直接的對應CPU的指令,數值再大,算術運算效能都很平穩。

需要注意的是,long的運算時間要比int的運算時間要長一些(畢竟是32位的系統),所以,在無需用 到long時,盡量不要用long,而用int.

PHP是弱類型的變數,算術運算很不盡人意,估計不是直接對應機器碼的算術運算。

PHP算術運算的過程猜測如下,在運算前需要檢測變數是否是數值,並要將非數值轉換成數值,比如 ,PHP可以做這樣的運算:100+"zhoutang",結果等於100.正是因為是弱類型語言,加上運算 前的檢測和轉換,所以才導致算術運算的效能低下。

PHP的單次運算時間比較穩定,大概每10000次算術加運算花費的時間約為3.5ms

不同的運算方法,也對效能有影響。

二.字串運算

a.測試標準

字串串連運算對比。

b.測試

測試代碼:

測試類型 JSP PHP
測試代碼 String str="";
while (str.length()< XXXX)
{
str+="a";
}
$str="";
while (strlen($str)< XXXX)
{
$str.="a";
}

測試結果(單位:毫秒)

XXXX取值 JSP PHP
1000 0-16 1
10000 656-703 9-10
100000 105078-105235 95-103

c.結論

Java的字串是用對象處理,很明顯,在字串的比較過程中,Java比PHP差很遠。(因為字串操作 ,很大部分要做串連,這裡只比較串連運算,另外粗略比較了一下substring,兩者的差別不是很大)

PHP的字串運算,估計很多是直接調用C的字串函數,所以效率會高很多。

在做WEB開發中,字串的串連操作還是很頻繁的(包括很多時候產生SQL字串),所以,在算術運算 和字串運算兩個方面,Java(JSP)優勢不明顯,與PHP各有所長。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.