我听说过NodeJS的速度有多快。但是我的简单测试用例表明,Apache与PHP的速度要快得多。代码如下所示:
PHP代码
require_once("mysqlconnect.php");
$start = round(microtime(true) * 1000);
$r = mysql_query("SELECT field1 FROM mytable");
$arr = array();
while($s = mysql_fetch_array($r)){
$arr[] = $s;
}
$obj = json_encode($arr);
$end = round(microtime(true) * 1000);
echo $end-$start;
的NodeJS
var mysql = require('mysql'),
start = new Date().getTime(),
connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : 'root',
database : 'testdb'
}),
json = '',
query = 'SELECT field1 FROM mytable';
connection.connect();
connection.query(query, function(err, results, fields) {
json = JSON.stringify(results);
var elapsed = new Date().getTime() - start;
console.log(elapsed);
connection.end();
});
该表包含1000行,十个测试表明即使没有任何加速器,PHP至少要快3倍。这是为什么?这是否意味着NodeJS仅在某些特殊情况下胜过PHP?