2012-06-13 2 views
2

특정 URL로 리디렉션하기위한 HTTP 요청을 처리하는 웹 서비스가 있습니다. CPU가 하루에 약 500 만 건의 공격을 당하면서 터지기는하지만 2 천만 플러스를 처리 할 수 ​​있도록 확장해야합니다. 이것은 프로덕션 환경이므로 새 노드 클러스터 방법에 대해 조금 불안합니다. 아직 실험적으로 나열되어 있습니다. 리눅스 서버에서 트래픽을 처리하기 위해 노드를 클러스터하는 방법에 대한 제안이 필요합니다. 이견있는 사람?무거운 트래픽 생산 환경의 클러스터링 노드 JS

+3

글쎄, 이미 노드 기반 응답 - [클러스터 모듈] (http://nodejs.org/api/cluster.html)이 있습니다. 노드 너머로 [로드 밸런싱] (http://en.wikipedia.org/wiki/Load_balancing_ (computing) #Vendors)의 다양한 옵션을 통해 각 웹 서비스를 실행하는 여러 실제 또는 가상 시스템을 만들 수 있습니다. 하지만 주/부 버전 - [v0.6 vs v0.8] (https://github.com/joyent/node/wiki/API-changes-between-v0.6) 사이에는 진정한 변화가있을 것입니다. (예 : [v0.6.15 v0.6.16]) (http://blog.nodejs.org/2012/04/30/version-0-6-v0.8) 16- 안정 /). –

+0

스케일링을 의미한다고 생각하십니까? => http://stackoverflow.com/a/4710617/11926 – Alfred

답변

0

하루 5 백만은 초당 57.87에 해당하고 2500 만은 초당 289.4입니다. 이 숫자는 귀하의 경우 단일 서버에 비해 너무 많지 않습니다. 특정 URL 만 리디렉션하려는 경우 해당 작업에 더 적합한 nginx과 같은 다른 대안을 사용할 수 있습니다. 그러나 여전히 NodeJS를 사용하려는 경우 현대 서버가 해당로드를 처리 할 수 ​​있다고 생각합니다. 클러스터링을 사용하는 방법의 예로 블로그 게시물 (NodeJS: Simple Clustering Benchmark)을 살펴보십시오. 모든 코어를 사용하려면 클러스터링을 사용해야합니다.

+0

사용 된 소프트웨어 버전에 대한 정보가 없으면 참조 된 정보는 완전히 의미가 없습니다. 클러스터는 노드