본문 바로가기

cs(with 매일메일)

[251105수] 로드 밸런싱에 대해서 설명해주세요

로드 밸런싱이란, 

애플리케이션을 지원하는 리소스 풀에 들어오는 네트워크 트래픽균등하게 분산하는 것입니다. 

 

이것을 수행하는 로드 밸런서는,

애플리케이션 서버 앞단에 위치하며, 

클라이언트의 요청을 지시하고 제어합니다. 

 

 

로드 밸런싱 알고리즘

1. RR(Round Robin) 

- 방식 : 모든 요청이 순서대로 처리

- 장점 : 구현이 쉽고 고른 분산을 보장한다

- 단점 : 서버 부하나 응답시간을 고려하지 않음

 

2. 가중치 라운드 로빈

- 방식 : RR + 가중치 개념을 추가

- 장점 :  RR의 단점 개선

- 단점 : 여전히 서버 상태를 고려하지 않음

 

3. 최소 연결

- 방식 : 가장 적은 활성 연결이 존재하는 서버에 요청을 전달(서버의 활성 연결을 모니터링 할 수 있어야 함)

- 단점 : 각 서버의 처리 능력이 다른 경우 적합하지 않음

 

4. 최소 응답 시간

- 방식 : 응답 시간이 가장 빠른 서버에 요청을 전달(각 서버의 응답 시간을 모니터링 할 수 있어야 함)

- 장점 : 사용자 경험 향상

- 단점 : 응답 시간을 기반으로 하기에, 다른 자원 요소(활성 연결, 서버 성능 등)은 고려하지 않음

 

5. IP해시

- 방식 : 클라이언트 요청의 IP를 기반 > 해시값 생성 후 이를 기반으로 서버를 결정

- 장점 : 클라이언트의 상태 관리가 용이

- 단점 : 부하가 균등하지 않을 수 있음