我目前正在做一个项目,以在当前服务器超载时自动动态生成新服务器。我正在使用node.js来创建服务器。我还使用变量计算了请求数。这个程序对吗?还是我应该更改我的代码?
我使用了一个函数来生成一个带有参数服务器名称和端口号的服务器,但我在指定的端口号中遇到错误。错误是process.nextTick error
。错误出在函数调用中的端口号上。
我需要一个正确的过程来将端口号作为参数传递给函数。
代码
var http = require('http');
var fs = require('fs');
var file = fs.readFileSync('file.html');
var reqno = 1;
function spawnserver(servername, port) {
servername = http.createServer(function (req, res) {
res.writeHeader(200, {
"Content-Type": "text/html"
});
res.end(file);
});
servername.listen(port);
}
var server = http.createServer(function (req, res) {
res.writeHeader(200, {
"Content-Type": "text/html"
});
res.end(file);
reqno++;
});
server.listen(3000);
if (reqno > 200) {
function spawnserver(server2, 9615);
}
错误
vishnu@vishnu-VirtualBox:~$ node server.js
/home/vishnu/server.js:21 function spawnserver(servername,9615);
^^^^
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^ SyntaxError: Unexpected number
at Module._compile (module.js:429:25)
at Object..js (module.js:459:10)
at Module.load (module.js:348:32)
at Function._load (module.js:308:12)
at Array.0 (module.js:479:10)
at EventEmitter._tickCallback (node.js:192:41)