traffic-distributionhealth-checklayer-4-layer-7
Load balancing을 설명해 주세요
- 예상 시간
- 6분
30초 답변
꼬리질문
조금 더 깊게 물어본다면
답변 뒤에 이어질 수 있는 질문들을 하나씩 열어볼 수 있어요.
L4와 L7 load balancing의 차이는 무엇인가요?
Health check는 왜 필요한가요?
Round robin의 단점은 무엇인가요?
Sticky session은 무엇인가요?
Load balancer 자체가 장애나면 어떻게 하나요?
부가 설명
서버 한 대가 모든 요청을 받으면 트래픽이 늘 때 쉽게 병목이 됩니다. Load balancer는 요청 앞단에 서서 여러 서버에 일을 나눠 줍니다. 덕분에 서버를 추가해 처리량을 늘리고, 특정 서버가 죽어도 나머지 서버로 요청을 보낼 수 있습니다.
다만 트래픽을 나누는 것만으로 모든 문제가 끝나지는 않습니다. 로그인 세션을 특정 서버 메모리에만 저장하면 다음 요청이 다른 서버로 갔을 때 상태를 못 찾을 수 있습니다. 그래서 sticky session을 쓰거나, session store를 외부로 분리하거나, stateless token 구조를 선택하는 식의 설계가 함께 필요합니다.
한 줄 정리
Load balancing은 요청을 나누는 기술이지만, 상태 관리와 장애 처리까지 함께 봐야 합니다.