• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    해결됨

Cluster 사용 목적과 예외 상황에 대한 질문입니다.

21.10.21 12:45 작성 조회수 137

1

안녕하세요.

Cluster 강의를 듣고 한가지 궁금한게 생겨 질문을 작성해 봅니다.

Cluster를 사용하는 큰 이유로는 결국 부하 분산을 시키기 위한 목적으로 사용하는 것으로 이해를 했는데요.

저 같은 경우 실무에서 1대의 서버로 처리할 수 없는 요청들이 빈번하게 발생하는 경우 인프라 확장(예: 로드밸런싱)을 고려하는 경우를 본적이 있었습니다.

Node에서의 Cluster와 서버의 개념(?)에서의 로드밸런싱 기능적으로 이 같은 역할을 하는지 궁금하며,

만약, Node로 생성한 웹 서버는 딱 1개의 프로세스만 띄워 놓고, 이를 서버의 확장(위에서 언급드린 로드밸런싱) 통해 부하 분산을 시킨다고 가정했을 때에는 Cluster를 사용할 필요가 없는지 궁금합니다.(즉, Cluster 사용은 서비스 규모에 따른 선택사항인지 묻습니다.)

질문 글 읽어주셔서 감사합니다.

 

P.S
저는 현재 실무에서는 PHP, Java 개발 언어를 다루며 Linux(CentOS)환경에서 웹 서버로는 Apache, 웹 애플리케이션 서버로는 Tomcat을 다루고 있습니다.

답변 1

답변을 작성해보세요.

1

네, 결론적으로는 선택사항입니다.

클러스터는 서버 인스턴스 한 대에서 노드 서버를 여러 개 띄워 로드밸런싱으로 부하를 분산하는 것이고

AWS의 로드밸런서같은 경우는 인스턴스를 여러 개 띄운 후 로드밸런싱을 하는 것입니다.

둘 다 적용할 수도 있습니다. 예를 들어 5대의 인스턴스에서 각각 5대의 노드 서버를 띄워서 총 25대를 띄운다던가요. 어떤 게 더 좋은지는 실제 성능 모니터링으로 실험해보아야 합니다.

Henu님의 프로필

Henu

질문자

2021.10.21

감사합니다!