2016-07-01 1 views
0

노드 응용 프로그램 작업을 서비스로 실행하려고합니다.노드 응용 프로그램이 종료되지 않습니다.

나는 스크립트를 호출하고, 여기서 이렇게 this을 사용하고 있습니다 : 나는 서비스를 시작할 때

cd $HOME/ 
$(which node) app.js 

그래서, 모든 것이 괜찮습니다.

문제는 서비스를 중지 할 수 없다는 것입니다. 서비스를 중지하면 프로세스가 계속 실행 중이므로 sudo kill -9 PID을 중지해야합니다. app.js에서

:

MongoClient.connect('mongodb://localhost/mydb', function(err, database) { 

    if(err) throw err; 

    db = database; 

    var server = app.listen(1338, function() { 
     var host = server.address().address; 
     var port = server.address().port; 

     server.timeout = 120000; 
    }); 


    process.on('SIGTERM', function() { 
     server.close(function() { 
       process.exit(0); 
     }); 

    }); 

}); 

내가이 처리하는 또 다른 process.on 문을 추가 할 필요가 있는지 확실하지 않다, 또는이 또 다른 문제 였을입니다. 난 그냥 app.js를 실행하면

+0

서비스로 프로세스를 실행하는 것이 쉽습니다. https://github.com/Unitech/pm2 –

+0

@RATS : 감사합니다. 확인하겠습니다! – George

답변

0

SIGTERM에서 SIGINT에 처리 신호를 교체 (서비스로, 나는 Ctrl + C로 막을 수 아니에요).

+0

: 불행히도 작동하지 않았습니다. 여전히 동일합니다 .. – George

관련 문제