클러스터링이란 똑같은 구성의 여러대의 서버를 병렬로 연결한 상태를 말합니다. 쉽게 말하자면 여러대의 서버 컴퓨터를 마치 하나의 가상 컴퓨터 처럼 업무를 수행하도록 하는 것을 의미합니다.
클러스터링된 서버들중에서 특정 한대의 서버에서 장비적인 문제나 어플리케이션에 문제가 발생하더라도 로드발란서(Load Balancer)에서 그 서버의 분배를 제거함으로 전체적인 서비스에는 영향을 주지 않고 제어할 수 있으며, 정상적인 서비스가 지속적으로 이루어지게 합니다.
세션 클러스터링(Session Clustering)은 WAS(Web Application Server)가 2대 이상 연결되어 있을 경우 연결된 모든 서버의 세션을 동일한 세션으로 관리할 수 있도록 해주는 것을 의미합니다.
예를 들면 L4 스위치를 통해 2대 이상의 WAS가 연결되어 있을 경우 일반적으로는 사용자가 접속했던 WAS로 L4 스위치가 접속을 유도해 주지만, 하나의 WAS에서 허용된 동접수를 초과한 접속이 발생할 경우 다른쪽으로 접속을 유도해 줍니다.
그럴 경우 기존 WAS의 세션이 아닌 새로이 접속된 WAS로 세션이 이루어지고 세션에 대한 처리 불일치가 발생합니다.
그래서 각 WAS에 대한 세션을 하나의 세션으로 관리하게 함으로써 설사 사용자가 기존에 접속했던 WAS가 아닌 새로운 WAS로 접속하더라도 세션은 하나로 관리되기 때문에 세션에 대한 불일치가 발생하질 않습니다.
시스템 절감이 됩니다. 고가의 고성능 서버를 하나 두는 것보다 적은 비용으로 합친 클러스터로 동일 성능을 구현할 수 있기 때문입니다.
슈퍼 컴퓨터 한 대에 필요한 비용은 상당하기 때문에 일반 컴퓨터들을 하나의 거대 클러스터로 구성하는 것입니다. 이 때 각 컴퓨터들을 노드(Node)라고 부릅니다. 복잡한 계산을 나눠서 각 노드에게 처리하게 끔 하고 시스템은 각 결과를 취합하는 것이지요.
참고 문헌
위키백과
https://ko.wikipedia.org/wiki/%EC%BB%B4%ED%93%A8%ED%84%B0_%ED%81%B4%EB%9F%AC%EC%8A%A4%ED%84%B0
https://m.blog.naver.com/seek316/221874766712
https://naver.me/5T3ZjTU2
'용어' 카테고리의 다른 글
OOP, SOLID, 디자인 패턴 (0) | 2025.01.05 |
---|---|
URI, URL, URN (0) | 2024.09.24 |
컨테이너, 쿠버네티스 Kubernetes (0) | 2024.08.22 |
AOP (0) | 2022.01.31 |
JSP의 jstl (0) | 2022.01.31 |