시스템 설계 · 중급
여러 대의 서버로 트래픽을 분산하는 로드 밸런서의 주요 역할과 일반적인 로드 밸런싱 알고리즘 몇 가지를 설명하고, 각 알고리즘이 어떤 상황에 적합한지 비교 설명해 주세요.
힌트 · L4/L7 로드 밸런서의 차이점과 라운드 로빈, 최소 연결 방식 등의 알고리즘을 설명하고 트래픽 특성에 따른 적합성을 비교합니다.
트래픽 분산헬스 체크세션 유지라운드 로빈가중치
모범답안
로드 밸런서는 여러 서버에 트래픽을 분산하여 시스템의 가용성과 확장성을 높이는 핵심적인 역할을 합니다. 서버 과부하를 방지하고, 특정 서버에 장애가 발생해도 서비스 중단 없이 운영이 가능하게 해줍니다.
일반적인 로드 밸런싱 알고리즘으로는 라운드 로빈, 최소 연결 방식, 가중치 기반 방식 등이 있습니다. 라운드 로빈은 서버에 순차적으로 요청을 분배하며, 최소 연결 방식은 연결 수가 가장 적은 서버에 요청을 전달합니다. 가중치 기반 방식은 서버 성능에 따라 가중치를 부여하여 트래픽을 분산합니다.
트래픽 특성에 따라 적합한 알고리즘이 다릅니다. 라운드 로빈은 서버 성능이 비슷하고 트래픽이 균등할 때 효과적이며, 최소 연결 방식은 연결 유지 시간이 긴 트래픽에 적합합니다. 가중치 기반 방식은 서버 성능이 다를 때 유용합니다. 예를 들어, CPU 사용량이 높은 서버에는 낮은 가중치를 부여하여 트래픽을 줄일 수 있습니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 대용량 트래픽 설계 면접 질문
- 시스템 성능 향상 및 부하 감소를 위해 '캐싱(Caching)' 기법을 활용합니다. 캐싱의 기본 원리와 어떤 종류의 데이터를 캐싱할 수 있는지 설명해주세요.
- 데이터베이스의 데이터가 너무 많아질 때 발생하는 성능 문제를 해결하기 위한 방법 중 하나인 '샤딩(Sharding)' 또는 '파티셔닝(Partitioning)'의 개념을 설명해주세요.
- 읽기(Read) 작업이 많은 서비스에서 데이터베이스의 부하를 줄이기 위해 '읽기 전용 복제본(Read Replicas)'을 활용합니다. 이 방식의 목적과 장점은 무엇인가요?
- 대용량 트래픽 환경에서 데이터베이스의 읽기 성능을 향상시키기 위한 Read Replica(읽기 전용 복제본)의 동작 원리와 주요 고려사항에 대해 설명해 주세요.
- 웹 서비스에서 캐싱(Caching)을 적용할 때 고려할 수 있는 대표적인 캐싱 전략(예: Cache-aside, Write-through, Write-back)들을 설명하고, 각 전략이 어떤 상황에 적합한지 비교해 주세요.
- 대용량 트래픽을 처리하는 분산 시스템에서 메시지 큐(Message Queue)가 필요한 이유와 주요 역할에 대해 설명하고, 메시지 큐 사용 시 얻을 수 있는 이점과 고려할 점을 이야기해 주세요.