본문 바로가기

Node.js

node.js - 프로세스 매니저

프로덕션용 앱을 실행할 때는 프로세스 관리자를 사용하는 것이 도움이 됩니다:

  • 앱이 충돌하는 경우 자동으로 앱을 다시 시작
  • 런타임 성능 및 리소스 소비에 대한 정보 제공
  • 설정을 동적으로 수정하여 성능 개선
  • 클러스터링 제어

프로세스 관리자는 배포를 용이하게 하고, 고가용성을 제공하며, 런타임에 애플리케이션을 관리할 수 있게 해주는 애플리케이션용 "컨테이너"로서 애플리케이션 서버와 다소 유사합니다.

 

 

Express 및 기타 Node.js 애플리케이션에 가장 많이 사용되는 프로세스 관리자는 다음과 같습니다:

  • Forever
    • 스크립트가 지속적으로 실행되도록 하는 간단한 명령줄 인터페이스 도구
    • Forever는 인터페이스가 간단하여 소규모의 Node.js 앱 및 스크립트 배포를 실행하는 데 이상적
  • PM2
    • 로드 밸런서가 내장된 Node.js 애플리케이션용 프로덕션 프로세스 관리자
    • PM2를 사용하면 애플리케이션을 영구적으로 유지하고, 다운타임 없이 다시 로드하며, 애플리케이션 로깅, 모니터링 및 클러스터링을 관리할 수 있다.
  • StrongLoop Process Manager(Strong-PM)
    • 로드 밸런싱, 모니터링, 멀티호스트 배포 기능이 내장된 Node.js 애플리케이션용 프로덕션 프로세스 관리자
    • 로컬 또는 원격 시스템에 Node.js 애플리케이션을 빌드, 패키징 및 배포하는 CLI가 포함되어 있다.
  • SystemD
    • 최신 Linux 배포판의 기본 프로세스 관리자
    • Node 애플리케이션을 서비스로서 간편하게 실행할 수 있다.

'Node.js' 카테고리의 다른 글

PM2  (0) 2023.05.01
node.js - 보안 모범 사례  (0) 2023.04.25
AICodeHelper  (0) 2023.04.11
Node.js AWS S3 파일 업로드  (0) 2023.04.07
node.js 웹 크롤링  (0) 2023.04.05