-
npm 패키지 - SupervisorJavaScript/Node.js 2018. 11. 25. 02:05
npm 패키지 - Supervisor
이번 시간에는 npm 패키지 중 Supervisor라는 패키지에 대해 알아보고 설치하고 사용해보려고 한다.
npm 사이트에 들어가서 Supervisor를 검색하면 아래와 같은 패키지를 찾을 수 있다.
https://www.npmjs.com/package/supervisor
"
Node.js를 위한 작은 관리자 스크립트이다.
프로그램을 실행하고 코드 변경을 감지하고 메모리 누수 걱정이 필요없고 모듈간 참조를 모두 정리하며 완전히 새로운 시스템을 필요로 할 것 없이 다시 로드하는 동작을 할 수 있다.
"
뭔가 어려운 문장들이 잔뜩 있어서 번역기를 열심히 돌렸지만서도...이해하기가 어렵게 번역된 것 같다.
핵심만 말하자면 코드를 변경하고(서버단의 동적인 코드 변경) 애플리케이션 서버를 재시작할 필요 없이 자동으로 코드 변경을 감지하고 서버를 재시작한 것 같은 관리를 해준다는 것이다.
그동안 app.js를 수정하면 서버를 종료하고 다시 "node app.js"를 수행해줘야만 서버단 코드의 수정사항이나 추가사항이 반영되었을 것이다.
이러한 불필요한 과정을 스킵시켜주고 실시간 서버관리를 해주는 프로그램이라 생각하면 될 것 같다.
설치
npm 사이트에서 Supervisor를 검색하면 해당 페이지에서 설치내용도 알려주고 사용 방법이나 기능들도 설명해주고 있다.
핵심은 -g명령어를 통해 애플리케이션이 위치한 프로젝트 폴더에 모듈로써 설치하는 것이 아닌 응용 프로그램 개념으로 글로벌 설치를 하는것 같다.
사용 방법
사용 방법 또한 npm Supervisor페이지에 등록되어 있다.
"
Node Supervisor는 프로그램들이 충돌났을 때 재시작하는데 사용된다.
또한 *.js 파일이 변경되었을 때 프로그램을 재시작하는데 사용된다.
"
사용 방법은 "supervisor [options] program.js" 형식으로 사용할 수 있는 것 같다.
Option은 사용 유무에 따라 선언할 수도 제외할 수도 있으니 "supervisor app.js"처럼 사용할 수 있을 것 같다.
supervisor app.js로 실행하니 실행한 프로그램을 알려주고 변동 사항을 감지하기 위한 디렉토리 위치를 알려주고 'rs'명령어를 입력하면 프로세스를 재시작할 수 있다는 정보를 알려주고 있다.
이 패키지를 사용하는 근본적인 이유는 '프로그램이 수정되었는지를 감지하고 서버를 재시작해주는가'여부이니까 app.js를 수정하고 저장해보자.
그럼 위 그림처럼 충돌이 발생함을 감지해내고 서버 프로세스를 재시작했다는 정보를 알려준다.
'JavaScript > Node.js' 카테고리의 다른 글
fs모듈 - 파일 목록 불러오기 fs.readdir() (0) 2018.11.25 fs모듈 - 파일 생성하기 fs.writeFile() (1) 2018.11.25 Express - HTTP Method GET, POST 데이터 처리 (1) 2018.11.24 QueryString - Semantic URL (0) 2018.11.23 Express - URL QueryString 처리 (0) 2018.11.23