2016-09-23 5 views
-2

2つのnode.jsアプリケーションが同じサーバー上で実行されています。ポート7777でリッスンしている1つのアプリケーションを再起動すると、2つの異なるポートで動作していても、ポート8044で実行されている他のアプリケーションは停止します。これをどうすれば解決できますか?1つのアプリケーションを再起動すると、別のアプリケーションnode.jsが停止する

ここにコード

AUT/app.jsです:

var http = require('http'); 
var express = require('express'), 
    testsConfig = require('./config/testsConfig'); 
var bodyParser = require('body-parser'); 

var app = express(); 

app.use(bodyParser.urlencoded({extended: true})); 
app.use(bodyParser.json()); 

app.get('/', function (req, res, next) { 
    console.log('ROOT'); 
    res.sendStatus(200); 
}); 

app.post('/aut', function (req, res, next) { 
    if (req.body && req.body.secret && req.body.secret == "danzellovestodance") { 
     res.send(testsConfig); 
    } else { 
     res.sendStatus(500); 
    } 
}); 


module.exports = app; 

app.js

var express = require('express'); 
var http = require('http'); 
var webhook = require('./git-webhook/app'); 
var aut = require('./aut/app'); 
http.createServer(webhook).listen(7777); 
http.createServer(aut).listen(8044); 

は、私は別のapp.jsファイルに各サーバを分離するために使用されるが、とき私は1台のサーバを起動し、もう1台は停止した。

if [ "$1" = "start" ]; then 
    forever start -l /opt/aut.log -a /opt/aut/app.js 
    echo "Started" 
elif [ "$1" = "stop" ]; then 
    forever stopall 
    echo "Stopped" 
elif [ "$1" = "restart" ]; then 
    forever stopall 
    forever start -l /opt/aut.log -a /opt/aut/app.js 
    echo "Restarted" 
elif [[ "$1" = "logs" || "$1" = "log" ]]; then 
    tail -f /opt/aut.log 
else 
    echo 'Invalid command. You can only use "start", "stop", "restart", or "logs"' 
fi 
+1

どのようにアプリを再起動しますか? –

+1

アプリはどのようにサーバーに設定されていますか?どのように再起動していますか?詳細がなければ、我々はその問題がどのようなものか分かりません。 –

+0

上記のコードを追加しました – Jasmine

答えて

1

問題は、2つのサーバーを起動する1つのノードアプリケーションしかないことです。

アプリケーションを再起動すると、アプリケーションが実行されているすべてのサーバーが停止します。

独立して制御できるようにするには、2番目のサーバーの2番目のノードアプリケーションを作成する必要があります。

+0

私はそれを試みましたが、1台のサーバーを再起動すると2台目のサーバーが停止します – Jasmine

+0

@ジャスミン - アプリケーション内の1台のサーバーを停止するだけではありません。アプリケーションを停止することができます。アプリケーションを2つの別々のアプリケーションに分割する必要があります。それだけで、あなたは他に影響を与えずに一方を制御することができます。 –

関連する問題