Heim >Backend-Entwicklung >PHP7 >Was ist der Leistungsunterschied zwischen PHP7, Java8, NodeJS5 und Lua5.2?
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.
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 '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")
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-TutorialDas 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!