中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php7、java8、nodejs5與lua5.2的性能有哪些區別

發布時間:2021-05-18 10:00:38 來源:億速云 閱讀:323 作者:小新 欄目:編程語言

小編給大家分享一下php7、java8、nodejs5與lua5.2的性能有哪些區別,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

簡單比較一下php7和java8的計算和字符串操作性能。

機器:osx 10.10   intel corei5  4GB

php7.php:

<?php

$t1 = microtime(true);

for($i=0; $i<10000000; $i++){
    aaa($i);
}

$t2 = microtime(true);

echo 'php time:' . ($t2 - $t1)*1000 . "ms\n";


function aaa($i){
    $a = $i + 1;
    $b = 2.3;
    $s = "abcdefkkbghisdfdfdsfds";

    if($a > $b){
        ++$a;
    }else{
        $b = $b + 1;
    }

    if($a == $b){
        $b = $b + 1;
    }

    $c = $a * $b + $a / $b - pow($a, 2);
    $d = substr($s, 0, strpos($s, 'kkb')) . strval($c);
}
?>

java8.java:

public class Main
{

    public static void main(String[] args)
    {
        long t1 = System.currentTimeMillis();
        
        for(int i=0; i<10000000; i++){
            aaa((float)i);
        }
        
        long t2 = System.currentTimeMillis();
        
        System.out.println("java time:" + String.valueOf(t2 - t1) + "ms");
        
    }
    
    static void aaa(float i){
        float a = i + 1;
        float b = 2.3f;
        String s = "abcdefkkbghisdfdfdsfds";
        
        if(a > b){
            ++a;
        }else{
            b = b + 1;
        }

        if(a == b){
            b = b + 1;
        }
        
        float c = (float) (a * b  + a / b - Math.pow(a, 2));
        
        String d = s.substring(0, s.indexOf("kkb")) + String.valueOf(c);
    }
}

node5.js:

var t1 = (new Date()).getTime();

    for(var i=0; i<10000000; i++){
        aaa(i);
    }
    
    var t2 = (new Date()).getTime();
    
    console.log("nodejs time:" + (t2 - t1) + "ms");
        
    
    function aaa(i){
        var a = i + 1;
        var b = 2.3;
        var s = "abcdefkkbghisdfdfdsfds";

        if(a > b){
            ++a;
        }else{
            b = b + 1;
        }

        if(a == b){
            b = b + 1;
        }

        var c = a  * b + a / b - Math.pow(a, 2);
        
        var d = s.substring(0, s.indexOf("kkb")) + c.toString();
    }

lua5.2.lua

function aaa(i)
	 a = i + 1
	 b = 2.3
	 s = "abcdefkkbghisdfdfdsfds"

	if(a > b) then
		a = a+1
	else
		b = b + 1
	end

	if(a == b) then
		b = b + 1
	end

	 c = a  * b + a / b - math.pow(a, 2)
	 d = string.sub(s, 0, string.find(s, "kkb")) .. tostring(c)
end


t1 = os.clock()

for i=0, 10000000, 1 do
	aaa(i)
end

 t2 = os.clock()

print("lua time:" .. (t2 - t1) * 1000 .. "ms")

分別執行1000萬次計算,依次執行以下命令:

java -jar java8jar

node node5.js

php php7.php

luajit lua5.2.lua

lua lua5.2.lua

結果:

php7、java8、nodejs5與lua5.2的性能有哪些區別

結論:由此可見就計算性能來說,java8 > nodejs5 > php7 > luajit > lua

java8是php7的5.2倍,nodejs5是php7的1.8倍,php7和luajit相當。

說lua是最快的腳本,那是往事了。靜態語言的計算性能肯定比動態語言強很多。

對于密集計算,java是最好的選擇;考慮到web的性能的瓶頸往往在數據庫和IO,nodejs和php都是很好的選擇。我個人喜歡php,無論從開發和部署,都比nodejs順心點。

特別注意:如果function aaa(i)中沒有參數i,那么nodejs是最快的,1000ms就完成了,估計nodejs對相同的執行結果進行了緩存。有好多人都犯了這個錯誤,測試下來就認為nodejs比java快多了。

看完了這篇文章,相信你對“php7、java8、nodejs5與lua5.2的性能有哪些區別”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

河津市| 德阳市| 印江| 辽中县| 广宗县| 鄂托克旗| 南投县| 文化| 丰都县| 临颍县| 木兰县| 施甸县| 呼玛县| 威远县| 金溪县| 祁阳县| 宜丰县| 无为县| 凌海市| 台前县| 屯昌县| 云和县| 彭山县| 习水县| 崇信县| 保山市| 墨竹工卡县| 固始县| 玉山县| 周宁县| 霍州市| 尤溪县| 宁国市| 迁西县| 鄯善县| 拉萨市| 东平县| 香港| 班戈县| 怀化市| 奈曼旗|