오리진 서버와 중간 서버 : 포워드 프록시와 리버스 프록시
- 오리진 서버 : 자원을 생성하고 클라이언트에게 권한이 있는 응답을 보낼 수 있는 HTTP 서버
- 중간 서버
- 프록시
- 포워드 프록시라고도 함
- 클라이언트가 선택한 메시지 전달의 대리자.
- 캐시 저장, 클라이언트 암호화 및 접근 제한 등의 기능 제공
- 클라이언트와 더 가까이 위치함
- 게이트 웨이
- 리버스 프록시라고도 함
- 오리진 서버들을 향하는 요청 메시지를 먼저 받아서 전달하는 문지기
- 오리진 서버에 가까이 위치함
- 캐시를 저장할 수 있으며, 부하를 분산하는 로드밸런서로도 동작 가능
- 프록시
![]() |
![]() |
고가용성 : 로드 밸런싱과 스케일링
가용성
- 주어진 특정 기능을 실제로 수행할 수 있는 시간의 비율
- 고가용성이 필요한 호스트는 서버임
- 트래픽이 가장 큰 영향을 끼침 → 과도한 트래픽은 발열 및 레이스 컨디션, 메모리 부족
- 업타임 : 정상적인 사용시간
- 다운타임 : 정상적인 사용이 불가능한 시간
- 고가용성 : 업타입은 높고, 다운타임은 낮고! 즉, 전체 사용시간중 대부분을 사용할 수 있는 특성
- 고가용성 유지의 핵심 : 문제가 발생하더라도 계속 기능할 수 있도록 설계하는 것 → 결함 감내
- 동작하는 시스템에 문제가 생길시, 예비 시스템으로 자동 전환되는 기능 : 페일오버(failover)
- 결함 감내를 하기 위한 기술 == 다중화
- 고가용성 유지의 핵심 : 문제가 발생하더라도 계속 기능할 수 있도록 설계하는 것 → 결함 감내
로드 밸런싱
- 트래픽의 고른 분배를 위해 사용되는 기술
- 모든 서버의 성능이 동일하다는 전제가 없기때문에, 서버에 가중치를 줄 수 있음!
- 로드 밸런서(load balancer)에 의해 수행
- 다중화된 서버와 클라이언트 사이에 위치하며 클라이언트의 요청을 각 서버에 균등하게 분배하는 역할
- 로드 밸런싱 알고리즘
- 부하가 균등하게 분산되도록 요청을 전달할 서버를 선택하는 방법
- 라운드 로빈 알고리즘 : 단순히 서버를 돌아가며 부하를 전달
- 최소 연결 알고리즘 : 연결이 적은 서버부터 우선적으로 부하 전달
- 부하가 균등하게 분산되도록 요청을 전달할 서버를 선택하는 방법
스케일링 : 스케일 업 스케일 아웃 오토스케일링
- 스케일 업
- 기존 부품을 더 나은 사양으로 교체하는 방법
- 수직적 확장
- 스케일 아웃
- 기존 부품을 여러개 두는 방법
- 수평적 확장
'CS > 기타' 카테고리의 다른 글
(CS) 네트워크 - 응용 계층, HTTP의 기초와 응용 (0) | 2025.03.28 |
---|---|
(CS) 네트워크 - 전송 계층, TCP & UDP (0) | 2025.03.25 |
(CS) 네트워크 - 네트워크 계층 IP (0) | 2025.03.22 |
(CS) 네트워크 - 물리 계층과 데이터 링크 계층 (0) | 2025.03.19 |
(CS) 네트워크 - 기본구조 (1) | 2025.03.18 |