PMC(Process Management Controller)와 PM2는 둘 다 프로세스 관리 도구지만, 몇 가지 차이점이 있음. 아래에서 간단히 비교해볼게.
1. 언어와 성능
- PMC: Rust로 작성됨. Rust의 특징 덕분에 메모리 효율성과 속도가 뛰어남. 가볍고 안정적.
- PM2: Node.js로 작성됨. JavaScript 기반이라 직관적이지만, Rust에 비해 무거울 수 있음.
2. 기능
- PMC:
- 프로세스 시작/중지/재시작, 목록 보기, 로그 확인 등 기본 기능 제공.
- HTTP/Rust API로 프로세스 제어 가능.
- 출력 형식(raw, JSON, default) 커스텀 가능.
- 서버 관리 기능(추가, 삭제, 기본 서버 설정) 지원.
- 심플한 디자인, PM2보다 기능은 적지만 가볍고 직관적.
- PM2:
- 클러스터 모드(멀티코어 활용), 로드 밸런싱 지원.
- 모니터링 대시보드, 메모리/CPU 사용량 실시간 확인 가능.
- 자동 재시작, 워치 모드, 로그 관리 등 고급 기능 많음.
- 에코시스템(PM2 Plus, Keymetrics)으로 확장 가능.
3. 사용법
4. 설치와 호환성
- PMC:
- Linux, MacOS, WSL 지원. Windows는 미지원.
cargo install pmc
로 설치 (Rust 환경 필요).
- 가볍고 빠름, 하지만 빌드하려면
clang++
필요.
- PM2:
- Windows 포함 모든 주요 플랫폼 지원.
npm install -g pm2
로 간단히 설치 (Node.js 환경 필요).
- 설치 과정 더 쉬움.
5. 누가 쓰면 좋을까?
- PMC:
- 가볍고 빠른 프로세스 관리 도구 원하는 사람.
- Rust 생태계 선호하거나 API로 커스텀 제어하고 싶을 때.
- 간단한 프로젝트나 시스템 자원 절약 중요할 때.
- PM2:
- Node.js 프로젝트에서 많이 사용.
- 고급 모니터링, 클러스터링, 대시보드 같은 기능 필요할 때.
- 대규모 애플리케이션 관리하거나 팀 협업 환경에서 유리.
결론
PMC는 심플하고 가벼운 대신 필수 기능에 집중. PM2는 더 많은 기능과 편의성 제공하지만 무겁고 Node.js에 의존. 프로젝트 규모랑 필요에 따라 골라쓰면 됨. PMC 궁금하면 릴리스 페이지 가서 바이너리 확인하거나 pmc --help
쳐봐! PM2는 npm install -g pm2
로 바로 시작 가능.