백엔드

로드벨런서(loadbalancer)의 정의 및 종류

씩씩한 IT블로그 2023. 9. 17. 21:10
반응형

로드벨런서란

https://m.post.naver.com/viewer/postView.naver?volumeNo=27046347&memberNo=2521903

특정 서비스에서 어떤 작업을 컴퓨팅 리소스 단위로 분산해서 처리하는 것. 부하가 한 곳에서 처리할 수 있는 용량을 넘으면, 처리를 못하거나 처리가 기대보다 낮아지기 때문에 이것을 방지하기위해서 부하를 분산시키는 것.

 

로드벨런서 종류

1. round-robin

순서대로 돌아가면서 서버를 하나씩 할당 하는 것.

2. IP hashing

같은 IP의 요청을 같은 서버에 연결하므로써 cache를 최대한으로 활용하여 속도를 최대한 높히는 것.

이때 아래와 같이 단순히 IP의 범위로 할당할 서버를 나누면, 특정 IP의 접속이 몰렸을 때 한 서버에 과부하가 걸릴 수 있다.

ip 서버
1~5 1
5~10 2
10~15 3
15~20 4

 

따라서 해싱을 통해 랜덤하게 ip를 서버로 할당한다. (하지만 이 방법도 하나의 ip에 요청이 몰리면 결국 하나의 서버에 과부하가 걸릴 수 있다)

ip 서버
1,5,7,9,18 1
2,3,8,10,20 2
4,6,12,13,15 3
11,14,16,17,19 4

3. Lesat Time

가장 빨리 응답을 줄 것으로 기대되는 서버로 연결

4. Random

랜덤하게 대상을 연결. 

반응형