EC2にログオンして「node server.js」コマンドで起動すると、NodeJSとNowJSをEC2上にメッセージングサーバーとして配置しました。私がバックグラウンドで起動し、コマンド "node server.js &> node.out"でEC2からログアウトすると、EC2のNodeJsとNowJsとの接続が切断されます
Sometime Jetty(Webserver)は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);
};
ところで私はまだEC2上で放火魔にhttp://localhost:3000/nowjs/now.jsを見ることができますが、私はeveryone.now.distributeMessageを呼び出すとき。私はそれが定義されていないと言っているエラーを持っています。しかし、私がEC2にログオンしてサーバーを再起動すると、正常に動作します。
ファイル名を指定して実行 "ノードserver.js" としばらくのためのオープンあなたの窓を残す:
はこれを試してみてください。長い間、いつものようにサーバーを稼働させてください。そうすれば、node.jsがクラッシュすると、エラーとバックトレースを見ることができます。 –
stacktraceからのエラーは表示されません。しかし、私のWebサーバは、everyone.now.distributeMessageがいつかは未定義であるというエラーをスローします。 : – toy
この投稿は私に役立ちますhttp://blog.nodejitsu.com/keep-a-nodejs-server-up-with-forever – toy