Heim > Backend-Entwicklung > PHP7 > Was ist der Leistungsunterschied zwischen PHP7, Java8, NodeJS5 und Lua5.2?

Was ist der Leistungsunterschied zwischen PHP7, Java8, NodeJS5 und Lua5.2?

醉折花枝作酒筹
Freigeben: 2023-02-17 22:22:02
nach vorne
2096 Leute haben es durchsucht

Dieser Artikel stellt Ihnen die Leistungsunterschiede zwischen PHP7, Java8, NodeJS5 und Lua5.2 vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was ist der Leistungsunterschied zwischen PHP7, Java8, NodeJS5 und Lua5.2?

Ein kurzer Vergleich der Berechnungs- und String-Operationsleistung von PHP7 und Java8.

Maschine: osx 10.10 intel corei5 4GB

php7.php:

<?php

$t1 = microtime(true);

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

$t2 = microtime(true);

echo &#39;php time:&#39; . ($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, &#39;kkb&#39;)) . strval($c);
}
?>
Nach dem Login kopieren

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);
    }
}
Nach dem Login kopieren

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();
    }
Nach dem Login kopieren

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")
Nach dem Login kopieren

Ausführen 0 Millionen Berechnungen und führen Sie Folgendes aus nacheinander Befehl:

java -jar java8jar

node node5.js

php php7.php

luajit lua5.2.lua

lua lua5.2.lua

Ergebnis:

Fazit: Es Daraus ist ersichtlich, dass Java8 > Nodejs5 > Luajit >

Zu sagen, dass Lua das schnellste Skript ist, gehört der Vergangenheit an. Die Rechenleistung statischer Sprachen ist definitiv viel besser als die dynamischer Sprachen.

Für intensives Rechnen ist Java die beste Wahl; wenn man bedenkt, dass der Leistungsengpass des Webs oft in der Datenbank liegt und IO, NodeJS und PHP beide eine gute Wahl sind. Ich persönlich mag PHP, das in Bezug auf Entwicklung und Bereitstellung praktischer ist als NodeJS.

Besonderer Hinweis: Wenn die Funktion aaa(i) keinen Parameter i enthält, ist nodejs am schnellsten und wird in 1000 ms abgeschlossen. Es wird geschätzt, dass nodejs die gleichen Ausführungsergebnisse zwischenspeichert. Viele Leute haben diesen Fehler gemacht. Nach dem Test denken sie, dass NodeJS viel schneller ist als Java.

Empfohlenes Lernen:

php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Leistungsunterschied zwischen PHP7, Java8, NodeJS5 und Lua5.2?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage