대용량트래픽

LoadBalancer/ 로드 밸런싱

whyHbr 2025. 1. 24. 01:29
728x90
반응형

LoadBalancer

  • 사용자의 요을 여러 서버로 분배해주는 하드웨어 or 소프트웨어 장비
  • 요청자는 LoadBalancer 뒤의 목록은 알지 못한다.

로드밸런서의 목적은 분배를 해주는 것

 

예시

  • Nginx, HAProxy

 

로드 밸런서는 크게 Server Side , Clinet Side 로 나뉘게 된다.

하드웨어를 사용하는 로드밸런서 -> Sever side

 

Server Side Load Balancing

  • 앞에서 배운 로드 밸런서를 통해 리퀘스트를 분산한다.
  • 클라이언트가 서버의 개별 주소를 알 필요가 없다
    • 다만 로드밸런서의 주소를 알아야 한다.
  • 실제적으로 한 단계를 더 거치므로 Latency 가 늘어날 수 있다.
    • 이를 Hop 홉 이라고 한다. 홉을 거칠 수록 속도가 느려짐. 
  • 로드밸런서에 장애 발생 시, 서비스는 더 이상 되지 않는다.

 

 

Client Side Load Balancing

  • 클라이언트가 서버의 대수 및 주소를 모두 알아야 한다.
  • Hop 이 존재하지 않으므로 좀 더 빠른 Lataency 를 보여준다.
  • 장애 포인트가 줄어든다.
  • 클라이언트에서 서버의 목록과 주소를 관리 해야한다는 단점이 존재한다.
    • 만약 서버들의 주소가 바뀌거나, 서버들의 목록이 추가, 삭제 된다면?
728x90