2017-11-05 8 views
0

단일 인스턴스에서 둘 이상의 node.js를 사용하는 것은 "단일 스레드"특성으로 인해 널리 사용되는 node.js 패턴입니다. 따라서 다른 포트를 사용하는 단일 VM에서 둘 이상의 node.js에 대한 요청의 균형을 맞추는 것이 쉽지 않습니다. .이 같은 instance group/다른 포트로 트래픽을 리디렉션 다른 부하 분산 (LB)을 만들 필요가있을 것이다, 그래서Google Load Balancer를 사용하여 동일한 GCE VM 인스턴스에 두 개 이상의 node.js 서버에로드 밸런스를 적용 할 수 있습니까?

는 지금까지 내가 이해, 우리는 개별 instance group 당 하나의 backend services를 만들 수 있습니다 (편집).

이 정보가 맞습니까? 동일한 VM 인스턴스에 다른 LB을 생성하면 LB 정책에 부정적인 영향을 줍니까? 모범 사례는 무엇입니까?

답변

0

계층 7로드 밸런서는 인스턴스 그룹을 백엔드로만 사용할 수 있으며 동일한 인스턴스의 여러 서버는 사용할 수 없습니다. 하나의 인스턴스에 여러 노드 서버를 함께 배치하면 클라우드 환경에서 (내 의견으로는) 그럴 가치가 없습니다. 최적의 인프라 사용에 관심이 있다면 App Engine이이를 수행하는 가장 좋은 방법 일 수 있습니다.

0

PM2 라이브러리를 사용하고 클러스터 모드를 사용할 수 있습니다. https://www.npmjs.com/package/pm2

pm2 start app.js -i 4 

동일한 서버 및로드 균형 출시 4 노드 인스턴스 위의 예는 내가 같은 VM 인스턴스의 노드의 수에 균형을로드 할 수 있다는 것을 발견, 세부 사항으로 파고 후

+0

이 방법은 단일 인스턴스에서만 작동합니다. 내 경우는 인스턴스 당 둘 이상의 노드, 둘 이상의 인스턴스입니다. – JLCDev

0

를 요청 포트를 추가하면 인스턴스 그룹에서 균형을 이룹니다. Port name mapping (Optional)

이렇게 두 개 이상의 VM 인스턴스를 가질 수 있으며 하나 이상의 활성 node.js이 있습니다.