본문 바로가기

Develop/System Structure

대규모 시스템 설계

4장 처리율 제한 장치의 설계

처리율 제한 장치 : 클라이언트 or 서비스가 보내는 트랙픽의 처리율을 제어하는 장치

장점

  • Dos 공격에 의한 자원 고갈
  • 비용 절감
  • 서버 과부하 제어

처리율 제한 장치 위치

  • 클라이언트 측 : 일반적으로 클라이언트는 처리율 제한을 안정적으로 걸 수 있는 장소가 못 되며 클라이언트 요청은 쉽게 위변조가 가능해 여기서 사용 x
  • 서버 측 : 일반적인 경우 서버 측에 제한 장치를 위치시키며 처리율 제한 미들웨어를 만들어 API 서버 직전에 두는 것도 방법

GateWay

  • 처리율 제한 장치는 보통 API Gateway라 불리는 컴포넌트에 구현된다.
  • Gateway는 처리율 제한, SSL 종단, authentication, whitelist 관리 등을 지원

설계

아래 2곳에 제한 기능을 부여할 수 있다(환경에 따라 적절한 것을 선택).

  • Gateway
  • 서버

처리율 제한 알고리즘

  • 토큰 버킷
  • 누출 버킷
  • 고정 윈도 카운터
  • 이동 윈도 로그
  • 이동 윈도 카운터

여러 대의 서버와 병렬 스레드 지원

고려 사항

  • 경쟁 조건 :
  • 동기화 :

'Develop > System Structure' 카테고리의 다른 글

대규모 시스템 설계  (0) 2024.03.25