Итак, я создал этот простой тестовый сервер в Node.js
Всякий раз, когда я делаю прямой ответ, я получаю 2200 запросов/секунду (быстро!).
Когда я закрываю только простую Q, отложенную вокруг нее, она падает до 580 запросов/секунд ( в 4 раза медленнее!). Может ли кто-нибудь объяснить эту огромную разницу?
// Requires
var server = require('http');
var q = require('q');
// Start server
var http = require('http');
http.createServer(function(request, response) {
// Comment out either of two below sections
// Without deferred
// 2200 reqs/second
response.writeHead(200, {"Content-Type": "text/html"});
response.write("test");
response.end();
// Q deferred
// 580 reqs/second
var deferred = q.defer();
deferred.promise.then(function() {
response.writeHead(200, {"Content-Type": "text/html"});
response.write("test");
response.end();
});
deferred.resolve();
}).listen(1234);