기타/문제해결

[Nodejs / PM2] window에서 pm2로 node서버 실행 시 cmd창 깜빡거림 현상

닉네임없음ㅎ 2024. 3. 14. 18:30

 

 

<문제발생 >
window에서 pm2를 이용해서 node 서버를 클러스터 모드로 실행했을때 
cmd 팝업창이 자꾸만 뜬다.

내가 실행하는 인스턴스의 갯수만큼 cmd창이 번쩍번쩍 거림..^^..

 

 

<원인>
구글링해보니,, 

원인은 아마도 nodejs가 새 프로세스 마다 셸을 생성하기때문에 창이 계속 뜨는거라고 한다..

pm2에서 발생하는것이 아니라 
노드 자체의 하위 프로세스를 생성하는 과정에서 발생하기 때문에 
{detached: true}라는 구성을 추가하면 팝업이 생성되지 않는다고 한다. 

문제는 클러스터 모드에서는 프로세스가 생성되는 방식을 제어하지 못하기 때문에 이 옵션을 추가하는 것이 불가능함..


<해결>
그래서 누군가가 추천한 방법.. 

npm i -g pm2@4.4
pm2 update


를 실행해보라고 했고 해결이 되었다. 
(이걸로 해결이 안되는 사람도 있다고 함 ㅠㅠㅠㅠ)

최신버전에는 여전히 이문제가 발생하는데 왜 저 버전은 괜찮은 것인가..................

https://github.com/Unitech/pm2/issues/2182
여기 들어가면 해당 이슈가 많이 제기된것을 알수있다..
(그리고 아주 오래동안 고쳐지지 않은것도 ^^)


해당 프로젝트를 배포하게 될 서버는 리눅스를 사용하기 때문에 괜찮을거라고 하는데 그래도 여전히 찝찝하다.. ㅎㅎ