더북(TheBook)

노드의 cluster 모듈처럼 클러스터링을 가능하게 하는 pm2의 클러스터링 모드를 사용해봅시다.

package.json

{
  "name": "nodebird",
  "version": "0.0.1",
  "description": "익스프레스로 만드는 SNS 서비스",
  "main": "server.js",
  "scripts": {
    "start": "cross-env NODE_ENV=production PORT=80 pm2 start server.js -i 0",
    "dev": "nodemon server",
    "test": "jest"
  },
...

pm2 start app.js 대신에 pm2 start app.js -i 0 명령어를 사용합니다. 취향에 따라 pm2 start app.js -i -1도 많이 사용합니다. -i 뒤에 생성하길 원하는 프로세스 개수를 기입하면 됩니다. 0은 현재 CPU 코어 개수만큼 프로세스를 생성한다는 뜻이고, -1은 프로세스를 CPU 코어 개수보다 한 개 덜 생성하겠다는 뜻입니다. 남은 코어 하나는 노드 외의 다른 작업을 할 수 있게 하는 것입니다. 예제에서는 -i 0을 사용합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.