SaaS-Produktentwicklung

Was ist SaaS-API-Ratenbegrenzung?

Autor: Oleksandra Butenko, Texterin

Geprüft von: Marta Dozorska, VP Product

Was ist SaaS-API-Ratenbegrenzung

Was ist SaaS-API-Ratenbegrenzung?

Die​‍​‌‍​‍‌ SaaS-API einer cloudbasierten Anwendung begrenzt die Anzahl der API-Aufrufe an einen Dienst für einen bestimmten Zeitraum pro Client-Gerät, Benutzer, IP, Schlüssel oder Mandanten. Der Client ist so konfiguriert, dass er eine bestimmte Anzahl von Anfragen sendet. Diese Art der API-Begrenzung hat Auswirkungen auf die Kapazität der Dienstinfrastruktur, da sie auch die Einschränkung des Benutzerzugriffs unterstützt und beim Cloud-Ausgabenmanagement hilft.

Innerhalb von Ratenbegrenzungsmechanismen ist die Überwachung von ‘429 Too Many Requests’-Nachrichten eine gängige Praxis, die auftritt, wenn Server diese an Clients senden, nachdem deren Anfrage-Schwellenwert erreicht wurde. In vielen Fällen verwenden Server den “Retry-After”-Header, um Clients über die empfohlene Verzögerung zwischen erneuten Anfragen zu informieren.

Wie funktioniert die API-Ratenbegrenzung?

Algorithmus Verhalten
Festes Fenster Einfach, kann aber an den Fenstergrenzen zu Spitzenlasten führen
Gleitendes Fenster Fairer, auf Kosten von mehr Koordination und Speicher
Token-Bucket Ermöglicht kontrollierte Bursts bei gleichzeitiger Durchsetzung einer durchschnittlichen Rate
Leaky Bucket Passt die Ausgabe für Ratenkonsistenz an

Worin unterscheiden sich API-Ratenbegrenzung und Drosselung?

Methode Für
Drosselung Glättung von Bursts
Ratenbegrenzung Durchsetzung von Fairness und Schutz gemeinsamer Ressourcen

 

Warum ist API-Ratenbegrenzung für SaaS-Anbieter unerlässlich?

Hier erfahren Sie, was Ratenbegrenzung spezifisch leistet:

  • Es ist damit verbunden, potenzielle Systembetriebsprobleme zu adressieren, die durch ein hohes Anfragevolumen aus einer unvorhergesehenen Quelle entstehen können.
  • Es verhindert Aktivitäten wie Web-Scraping oder Brute-Force-Angriffe.
  • Es berücksichtigt die Kosten, die durch Autoscaling oder die Ressourcennutzung durch nachgeschaltete Systeme entstehen.

Welche Best Practices gibt es für die clientseitige Handhabung von API-Ratenbegrenzungen?

  1. Befolgen Sie die Anweisungen in den Retry-After-Headern.
  2. Versuchen Sie exponentielles Backoff mit einer zufälligen Komponente.
  3. “Reihen Sie” die Anfragen ein oder verteilen Sie die Last bei hoher Gleichzeitigkeit.
  4. Sie können clientseitig einen Token Bucket für Verkehrs- und Warteschlangenmanagement implementieren, für Workloads, die ​‍​‌‍​‍‌Parallelität erfordern.
Beachten Sie:

Das Wiederholungsverhalten ist mit Thundering-Herd-Effekten und der Zuverlässigkeit unter Last verbunden.

Eine typische Lösung umfasst verschiedene Ebenen: API-Gateway, Edge-Security-Plattform und ein Dienststeuerungs- oder Quotasystem. Die folgenden Muster können anwendbar sein:

  • Schlüsselbasierte Grenzwerte
  • Mandantenbasierte Grenzwerte
  • Endpunktspezifische Grenzwerte
  • Abgestufte Pläne
Hinweis:

Ein geschichteter Ansatz ist oft am besten für SaaS, Edge-Schutz, Gateway-Drosselung und Geschäftsregeln auf Anwendungsebene geeignet.

 

Wie können SaaS-Anbieter Rate-Limit-Verzögerungen effektiv an Benutzer kommunizieren?

In Fällen, in denen die Ratenbegrenzung zu einer höheren Anzahl von Kundenkontakten für das Supportpersonal beiträgt, ist es ratsam, die Grundlage für die Anfragelimitierungen zu erläutern. Den Anbietern sollte geraten werden:
· Eindeutige HTTP-Statuscodes verwenden.
· „Retry-After“- und „rate-limit“-Header anzeigen.
· Die in den Dokumenten festgelegten Limits sind den Entwicklern mitzuteilen.
· Wo machbar, die Nutzungsstatistiken des Kunden oder dessen verbleibendes Kontingent anzeigen.

 

Beachten Sie:

Die Benutzererfahrung umfasst menschenlesbare Fehlermeldungen, maschinenlesbare Metadaten und eine Self-Service-Option für Anfragen zur Kontingenterhöhung.

Welche Einschränkungen hat das API-Rate-Limiting, und welche ergänzenden Strategien gibt es?

Ratenbegrenzung verwaltet Missbrauch, Kosten und Fairness, doch ihre Wirksamkeit bei der Lösung von Problemen in verteilten Systemen kann Grenzen haben. Die Integration der Ratenbegrenzung mit anderen Kontrollen verdient Beachtung:

  • Kontingente
  • WAF oder Bot-Schutz
  • Authentifizierung und Idempotenz
  • Überwachung

 

Schlussfolgerung

SaaS-Ratenbegrenzung APIs ist eine wichtige Maßnahme, um zu schützen Cloud-Infrastruktur, den Dienst aufrechtzuerhalten und verfügbar zu halten und den Betrieb zu überwachen. Diese Methode verwendet verschiedene Algorithmen mit Drosselung und basiert auf Client-Kommunikation und angemessenen Grenzanpassungen.

Bereit anzufangen?

Wir haben die gleiche Reise hinter uns. Nutzen Sie unsere 18-jährige Erfahrung und verwirklichen Sie Ihre globalen Träume.
Mosaikbild
de_DEDeutsch