да это программа, каждый раз не запускается как php скрипт, для проверки
var sys = require('sys'); var http = require('http'); var a = 1; http.createServer(function (req, res) { res.sendHeader(200, {'Content-Type': 'text/plain'}); res.sendBody('a: ' + a); a++; res.finish(); }).listen(8000); при каждом запросе переменная a будет увеличиваться |
Цитата:
<? $fp1=fopen('test.php','w'); $fp2=fopen('test.js','w'); fwrite($fp1,"<?\r\n"); fwrite($fp1,"list(\$usec, \$seconds) = explode(\" \", microtime());\r\n"); fwrite($fp1,"\$start = ((float)\$usec + (float)\$seconds);\r\n"); fwrite($fp2,"sys = require('sys');\r\n"); fwrite($fp2,"var start = Date.now();\r\n"); $op=array('+','-','*','/','%'); for($i=97;$i<=122;$i++) { fwrite($fp1,'$'.chr(rand(97,122))."=0;\r\n"); fwrite($fp2,'var '.chr(rand(97,122))."=0;\r\n"); } $string='$'.chr(rand(97,122)).'='.'$'.chr(rand(97,122)).$op[array_rand($op)].rand(1,1000000).";\r\n"; for($i=0;$i<1000000;$i++) { $a=chr(rand(97,122)); $b=chr(rand(97,122)); $c=$op[array_rand($op)]; $d=rand(1,1000000).'.'.rand(1,10000); $string='$'.$a.'='.'$'.$b.$c.$d.";\r\n"; fwrite($fp1,$string); $string=$a.'='.$b.$c.$d.";\r\n"; fwrite($fp2,$string); } fwrite($fp1,"list(\$usec, \$seconds) = explode(\" \", microtime());\r\n"); fwrite($fp1,"\$end = ((float)\$usec + (float)\$seconds);\r\n"); fwrite($fp1,"echo \$end - \$start;"); fwrite($fp1,"?>"); fwrite($fp2,"sys.puts((Date.now() - start)/1000);\r\n"); ?> |
заменил rand(97,122) на $i в первом цикле, а то пишет что переменные не определены некоторые.
использовал следующий код для запуска, чтобы измерить полное время парсинга/загрузки/выполнения скрипта sys = require('sys') var start = Date.now(); sys.exec('node test.js').addCallback(function(output){//sys.exec('php test.php') sys.puts(output); sys.puts((Date.now() - start)/1000); }); результат (в сек) Код:
node.js 0.024 - время выполения показаное скриптом |
ну, чтож.
Nodejs весьма хорош, чтобы на нем можно было писать посмотрел список существующих на данный момент модулей огорчило отсутствие SAX Самый главный минус вижу, только в низкой степени популяризации. Мало кто из заказчиков приемлет проект написанный на нем. но для себя, я думаю смогу найти применение этому инструменту |
Цитата:
Цитата:
|
есть libxmljs http://libxmljs.squishtech.com/
|
Цитата:
|
Список модулей растёт не по дням, а по часам, что не может не радовать.
|
Можно добавить node.js в рамках платформы Хайвекст. Соответственно появится выбор между двумя движками Rhino и V8 (node.js) + сервисы и другие возможности станут доступны также в node.js
|
Hivext Technologies,
а это имеет смысл? Основная фишка -- асинхронность, у вас, я так понимаю, ею не пахнет. |
Часовой пояс GMT +3, время: 23:34. |