시스템의 자원이 과도하게 사용되는 것을 방지하고, 안정성 및 성능을 일정하게 유지되도록 사용량을 제한하는 것 입니다.
대표적인 예시로는 PC, 노트북, 모바일 기기의 CPU, GPU 등의 성능을 낮추거나, 전원을 차단하여 기기와 배터리의 수명을 관리하는 것이 있습니다.
CPU 스로틀링

설명 : CPU, GPU 사용량을 제한하여 과열을 방지하고 전력 소비를 줄이는 방법
사용 목적
사용 예시
기대 효과
네트워크 스로틀링

설명 : 네트워크 트래픽을 제한하여 대역폭을 관리하고 네트워크 혼잡을 방지하는 방법
사용 목적
사용 예시
기대 효과
API 스로틀링

설명 : API 요청 수를 제한하여 서버의 과부하를 방지하는 방법
사용 목적
사용 예시
기대 효과
디스크 스로틀링
설명 : 디스크 입출력 작업의 속도를 제한하여 디스크 사용량을 관리하는 방법
사용 목적
사용 예시

물이 새는 바가지를 뜻하는 알고리즘의 이름처럼, 아래의 구멍을 통해서 떨어지는 물은 request 되는 것이고, 바가지의 용량을 넘어서 흘러 넘치는 것은 request 되지 않는 것 입니다.
장점
단점

양동이 안에 토큰을 넣는다는 뜻으로, 일정 시간을 간격으로 양동이 안에 토큰이 생성 되고, 요청이 들어오면 토큰이 있는지 확인하여 요청을 처리 합니다.
장점
단점
Leaky Bucket vs Token Bucket
| Leaky Bucket | Token Bucket | |
|---|---|---|
| 트래픽 제어 방식 | - 일정한 속도로 패킷을 전송 | - 토큰이 있는 경우에만 트래픽을 전송할 수 있음 |
| - 트래픽 버스트를 허용하지 않음 | - 버스트 트래픽 허용 | |
| - 과도한 트래픽은 버려짐 | - 토큰이 부족할 경우, 트래픽이 지연되거나 버려짐 | |
| 유연성 | - 상대적으로, 덜 유연함 | - 상대적으로, 더 유연함 |
| - 일정한 트래픽 전송 속도를 유지 가능 | - 트래픽의 일시적인 증가를 허용 가능 | |
| 사용 목적 | - 네트워크 트래픽을 일정하게 유지하고, 네트워크 혼잡을 방지하는 데 주로 사용 | - 평균 대역폭을 유지하면서도 버스트 트래픽을 허용하는 데 주로 사용 |
참고 자료
What Is CPU Throttling And How To Enable Or Disable It On Windows
ISP Throttling Your Internet Connection? Test and Find Out - Speedify
[Rate Limit - step 1] Rate Limit이란? (소개, Throttling, 구현시 주의사항 등)