Toolverse
Wszystkie skille

rate-limiting-apis

autor: jeremylongshore

Chroń swoje API przed przeciążeniem za pomocą zaawansowanego rate limitingu

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Wyświetlenia
5

O skillu

Skill do implementacji zaawansowanego ograniczania częstotliwości żądań do API. Obsługuje algorytmy sliding window, token bucket i fixed window counter, wspierane przez Redis dla wdrożeń rozproszonych. Pozwala ustawić limity per endpoint, per użytkownik i per klucz API z tiered quotami i burstowymi przydziałami. Automatycznie dodaje nagłówki HTTP informujące klientów o statusie limitów. Idealny dla ochrony API przed nadmiernymi żądaniami i zarządzaniem planami dostępu (Free, Pro, Enterprise).

Jak używać

  1. Przeanalizuj wzorce ruchu na swoich endpointach, czytając logi dostępu lub metryki, aby określić odpowiednie limity dla każdej kategorii (operacje read-heavy, write-heavy, zasobochłonne).
  2. Wybierz algorytm rate limitingu dla każdego endpointu: token bucket dla ruchu z pikami, sliding window log dla precyzyjnych limitów per sekundę, lub fixed window counter dla prostego egzekwowania quotów.
  3. Wdroż middleware rate limitingu, które wyodrębnia identyfikator klienta (klucz API z nagłówka, ID użytkownika z JWT, lub adres IP jako fallback) i sprawdza go względem skonfigurowanego limitu.
  4. Skonfiguruj tiered limity dla różnych planów dostępu: Free (100 req/min), Pro (1000 req/min), Enterprise (10000 req/min) lub dostosuj do swoich potrzeb.
  5. Upewnij się, że masz dostęp do Redis 6+ dla rozproszonego stanu rate limitów w przypadku wdrażania na wielu instancjach.
  6. Monitoruj wskaźniki trafień rate limitów i metryki odrzuconych żądań, a następnie opublikuj politykę rate limitingu w dokumentacji API dla konsumentów.

Podobne skille