본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


Node.js

Node.js Cluster 기능

야근없는 행복한 삶을 위해 ~
by 마샤와 곰 2019. 4. 27.

 

 

Node.js는 단일 싱글스레드 형식이라, cpu를 한개만 사용하여 속도보장을 한다. 그런데 다량의 접속이나 요청이 들어 온 경우 cpu한개만으로 버벅일 경우가 있다.

이럴 때 Cluster라는 모듈을 설치하면 원하는 수만큼의 cpu를 점유하게 해 주어 요청된 작업을 할 수 있게 한다.
npm install cluster 명령어로 클러스터를 설치하고 아래처럼 사용하면 된다.

var cluster = require('cluster');
var numCpus = require('os').cpus().length; //cpu 갯수 지정, 원하는 값으로 고정해도 무방하다. 물론 초과하면;;
if(cluster.isMaster){  //마스터 클러스터에서 점유 할 cpu 갯수 선택
    for(var i=0; i < numCpus;i++){
        cluster.fork();  //해당 클러스터 갯수 생성
    }
    cluster.on('exit',function(worker, code, signal){
        console.log("worker.process.pid : " + worker.process.pid);
    });
}
else{
    //원하는 작업
}

 

 

반응형
* 위 에니메이션은 Html의 캔버스(canvas)기반으로 동작하는 기능 입니다. Html 캔버스 튜토리얼 도 한번 살펴보세요~ :)
* 직접 만든 Html 캔버스 애니메이션 도 한번 살펴보세요~ :)

댓글