You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »



API 요청 수 제한 정책

  • 카페24는 API 요청을 Bucket에 쌓아두었다가, Bucket이 가득 차면 요청을 제한하는 방식인
    "Leaky Bucket" 알고리즘을 사용하고 있습니다.

물을 담는 구멍 난 양동이를 상상해보세요.

  • 🧑‍💻 API 요청 = 물

  • 🪣 버킷 = 요청 저장 공간

  • 🕳️ 구멍 = 일정 속도로 빠져나가는 처리 속도

흐름

  1. 요청이 들어오면 → 버킷에 저장

  2. 버킷은 일정한 속도로만 요청을 처리


  1. 입구에서 유체가 들어옵니다.

  2. 압력이 낮으면 → 밸브가 열려서 정상 흐름 유지

  3. 압력이 높아지면 →

    • 스프링을 밀어 올리면서

    • 밸브가 닫히기 시작

  4. 결과적으로 입구 쪽 압력이 올라가면서 유입이 줄어듭니다



Leaky Bucket은
넘치면 잘라버리는 방식(차단)

Backpressure는
넘치기 전에 속도를 조절하는 방식(제어)

즉,
❌ 버리는 게 아니라
✅ 흐름을 조절합니다.



공개호스트 - OpenHostService

이 프로토콜은 공개가 되어있고 이용하기위한 문서화가 잘되어 있으며 이것을 이용하는 팀은 상류 API를 그대로 이용을 해야합니다.


페이스북의 공개된 API를 이용하여 로그인 기능을 만들거나 정부 OpenAPI를 이용하여 기능을 개발하는경우

개발팀은 제공되는 API를 그대로 준수하고 따릅니다. 상류 제공 API팀은 전체 의견을 수렴해 기능개선을 할수도 있지만

특정팀의 의견을 위해 기능변경을 하지 않습니다.


순응적 패턴

언제 무엇을 받게될지 상류(Upstream)인 공급자(Provider)가 주로 결정을 하지고

이것을 제공받는 하류(DownStream)팀은 상류 스트림을 준수합니다. 

공개호스트와는 다르게 하류팀의 요구사항을 받아들이기도합니다.

Cafe24 API의 경우 대부분 공개호스트이지만, 협약되어 제공되는 API가 있을수 있습니다.

협약관계 또는 상류의 기능이 오류가있거나 개선이 필요할시 공급받는 다운스트림에서 개선요청을 할수도 있습니다.


more : 컨텍스트 맵핑과 API










Link to this page
  • No labels