Я хотел бы знать, если есть разница, производительность мудрый между:В чем разница между этими двумя реализациями в node.js?
1) в том же порту:
var http = require('http');
http.Server(function (req, res) {
if (req.url == 'foo') { foo(); return;}
if (req.url == 'bar') { bar(); }
}).listen(123);
2) расщепляется на 2 порта
var http = require('http');
http.Server(function (req, res) {
foo();
}).listen(123);
http.Server(function (req, res) {
bar();
}).listen(456);
3) в 2 отдельных файлах js, которые я запускаю на двух разных узлах cmd.
foo()
и bar()
- функции, которые могут потребовать времени для решения, например, для загрузки файлов.
Ну, если рабочая нагрузка связана с I/O-привязкой, наличие двух CPU не ускорит ее (иначе node.js вообще не будет иметь никакого смысла). Разумеется, если рабочая нагрузка будет очень тяжелой, это очень поможет. – Thilo
Yup, вот почему я сказал «в зависимости от требуемого и доступного IO» :) – nicolaskruchten