본문 바로가기
개념/Study

Load Balancing (로드 밸런싱)

by Hwanii_ 2023. 11. 16.
728x90

1. Load Balancing (로드 밸런싱)

 

로드 밸런싱은 일반적으로 네트워크 또는 웹 트래픽을 다루는 환경 에서

여러 서버 간의 부하를 분산 시키는 기능을 한다.

 

따라서, 전체 시스템의 성능을 향상 시키게 된다.

 

웹 트래픽 (Web Traffic) 은 인터넷을 통해 웹 서버와 클라이언트 간에 이동하는 데이터의 양 또는 유형을 의미 한다.

 

웹 트래픽은 사용자가 웹 브라우저를 통해 웹 사이트를 방문 하거나, 웹 서비스 자체를 사용 할 때 발생 한다.

(그 외 모든 다양한 활동에 웹 트래픽이 발생 한다)

 

 

 

2. 로드 밸런싱의 원리 및 주요 구성 요소

 

1) Load Balancer (로드 밸런서)

 

역할 : 로드 밸런서는 클라이언트로부터 들어오는 트래픽을 여러 서버로 분산 시키는 주체 이다.

 

종류 : 하드웨어 기반과 소프트웨어 기반으로 나뉘어 진다.

하드웨어 기반은 전용 장비가 존재 해서, 그것을 사용 하고,

소프트웨어 기반은 일반적으로 서버에 설치된 소프트웨어로 구현 된다.

 

 

 

2) 서버 (Server)

 

목적 : 로드 밸런서가 분산시키는 대상이 되는 서버들은 주로 동일한 애플리케이션 및 서비스를 호스팅 한다.

 

동기화 : 서버들은 동일한 데이터 또는 상태를 가져야 한다.

클라이언트가 서버 간의 전환이 발생 해도 문제가 없도록 동기화가 필요 하다.

 

 

 

3) 알고리즘 (Load Balancing Algorithm)

 

Round Robin : 라운드 로빈 이라 한다. 트래픽을 순서대로 각 서버에 분배 한다.

 

Weighted Round Robin : 가중치 기반 부하 분산 이라 한다. 서버에 가중치를 할당 한다.

가중치에 따라 트래픽을 분배 한다.

 

Least Connections : 최소 연결 수 이다. 현재 연결된 숫자가 제일 적은 서버에 트래픽을 분배 한다.

 

Least Response Time : 최소 응답 시간 이다. 서버의 응답 시간이 제일 짧은 서버에 트래픽을 분배 한다.

 

 

 

정리하자면, 로드 밸런싱 이라는 개념은, 주로 웹 서버 및 애플리케이션 서버 또는 데이터베이스 서버 등등 에서 사용 된다.

 

대규모 데이터 트래픽을 처리 하고, 서버가 효율적으로 돌아 갈 수 있도록 도움을 주는 개념 이다.

 

이러한 개념을 사용함으로써, 서비스는 신뢰성이 올라가고, 사용자 입장에서는 편의가 향상 될 수 있게 된다.

반응형