inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

cluster

프로세스와 cpu관련 질문드립니다.

238

cloer

작성한 질문수 11

0

1. 마스터프로세스는 코어 하나를 점유하지 않나요?

강의에서 제로초님 컴퓨터는 cpu가 6개(코어를 의미하신 거겠죠?)라고 하셨습니다. 그리고 cluster.js를 실행했을 때 process.pid가 7개가 출력됩니다. (마스터 프로세스 하나 워커 프로세스 6개) 이때 마스터 프로세스는 어느 코어에서 실행 되는건가요?

 

2. 클러스터와 child_process 차이가 뭔가요?

둘다 멀티 프로세스이지만 child_process는 메인 프로세스에서 다른 프로그램을 실행 시킬 수 있는 제어권을 주는 개념이고 클러스터는 효율을 위해 메인에서 워커에게 일을 분배해준다고 이해했습니다. 

 

여기서 cluster.js의 else부분을 다른 파일로 만들고 부모 프로그램에서 child_process로 else부분 파일을 실행시킨다면, 부모 프로세스에서 listen하므로 포트를 공유하고 데이터를 넘겨주며 멀티프로세스를 사용할 수 있는데 이런 식으로 child_process를 이용해 클러스터를 구현한다면 클러스터와 어떤 차이가 있는건가요?

Sequelize nodejs mysql mongodb

답변 2

0

cloer

cluster를 child_process로 구현한거였네요 감사합니다.

0

제로초(조현영)

1. 6개 중 하나에서 실행될겁니다. 어느 코어인지는 알 수 없습니다.

2. child_process로도 서버를 띄울 수 있지만 메인프로세스와 포트 공유가 되는지를 모르겠습니다. cluster는 포트 공유가 되므로 서버는 여러 개이더라도 하나의 포트를 통해서 접근할 수 있습니다.

공식문서에 차이와 특징이 나와있네요.

https://nodejs.org/api/cluster.html#how-it-works

리눅스 노드 설치시 패키지

0

162

0

socket.js 에서 referer로부터 roomId를 가져올 때

0

907

3

스트리밍 방식으로 대용량 파일 업로드 & 다운로드 관련 질문

0

2281

2

a[title] 질문드립니다

0

376

1

리뉴얼 강의 및 공부 방법

0

583

1

jwt decode

0

1130

1

node.js 교과서 3판 질문드립니다

0

392

1

passport와 jwt

0

434

1

리뉴얼 강의

0

421

2

혹시 Node.js 교과서 3판 이북은 언제 나오나요?

0

355

1

몽고디비 사용자도 MYSQL부분을 들어야 하나요???

0

482

1

sql 쿼리 로그는 어떤 모듈이 작성하나요?

0

506

2

nunjucks res.render('error'); 작동을 안합니다.

0

512

1

질문있습니다.

0

348

1

multer 한글 파일 업로드시 파일명이 깨져요.

1

3536

1

수업자료는 어디있나요?

0

368

1

질문 있습니디

0

237

1

multer 사용시 file 외 name값은 못받나용?

0

418

1

코드 중복 부분 질문드립니다.

0

299

1

api 만드는 이유 질문드립니다.

0

288

1

Strategy의 done에 대해 질문드립니다.

0

367

1

안녕하세요 fs 권한 관련 질문드립니다

0

451

1

시퀄라이즈 연결질문...

0

500

2

res.setHeader vs res.cookie

0

1789

3