http://stackabuse.com/setting-up-a-node-js-cluster/ 는Node.js 클러스터링 - 실제로 얼마나 많은 메모리가 사용됩니까?
"명확하게하기 위해이 노드에서 분기하는 것은 실제로 현재 프로세스를 복제하지 않습니다에 POISIX 포크 매우 다릅니다 말한다, 그러나 그것은 새로운 V8 인스턴스를 시작 않습니다.
이 방법이 멀티 쓰레딩을위한 가장 쉬운 방법 중 하나이지만주의해서 사용해야합니다 .1000 명의 작업자를 생성 할 수 있다고해서 꼭 필요한 것은 아닙니다. 각 작업자는 시스템 리소스를 사용하므로 해당 작업을 생성해야합니다. 노드 문서는 각 자식 프로세스가 새로운 V8 인스턴스이기 때문에 각 인스턴스에 대해 30ms의 시작 시간과 인스턴스 당 최소 10MB의 메모리를 예상해야한다고 말합니다. "
그러나 https://nodejs.org/api/cluster.html 말한다
"아무 라우팅 로직은 Node.js를에 없거나 프로그램, 그리고 노동자 사이에 공유 된 상태. 따라서, 의존하지 않도록 프로그램을 설계하는 것이 중요하다 없다 세션과 로그인과 같은 것들을 위해 메모리 내 데이터 객체에 너무 많이 의존합니다. "
작업자 (분기 된 프로세스)가 실제로 마스터 프로세스의 복제본이 아닌 경우 공유 상태가없는 것은 어떻습니까?
마스터 프로세스에 1 기가 바이트 JSON 문자열이있는 경우 모든 하위 프로세스에도 1 기가 바이트 JSON 문자열의 복제본이있는 것으로 나타났습니다. 따라서 두 명의 어린이에게는 3GB의 메모리가 사용됩니다. 실제로는 어떻게됩니까?
그래서 그들은 ". 노동자 사이에 공유 상태"가 무엇을 의미합니까? – Arman