EC2上的NodeJs和NowJs失去连接

时间:2011-07-18 08:57:05

标签: node.js amazon-ec2 nowjs-sockets

我已经将NodeJS和NowJS部署为EC2上的消息服务器,当我登录到EC2并以命令“node server.js”启动时,它运行正常。但是如果我在后台启动并使用命令“node server.js&> node.out”从EC2注销,那么

有时Jetty(Webserver)无法连接o NowJs。我不确定为什么会这样,我错过了什么?

这是我的代码。


var http = require('http');
var httpServer = http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
});

httpServer.listen(3000);

var nowjs = require("now");
var everyone = nowjs.initialize(httpServer);
everyone.now.distributeMessage = function(ids, message){
    everyone.now.receiveMessage(ids, message);
};

BTW我仍然可以在EC2上的firebug中看到http://localhost:3000/nowjs/now.js,但是当我调用everyone.now.distributeMessage时。我收到错误,说它未定义。但是当我登录到EC2并再次启动服务器时,它运行正常。

1 个答案:

答案 0 :(得分:0)

使用您提供的命令,您的进程正在用户的ssh会话中运行。当您退出会话时会消失。它可以像使用 nohup 一样简单。

试试这个:

nohup node server.js & > node.out