Rate Limiting

Rate Limiting ist die Praxis, zu begrenzen, wie viele Anfragen ein Client (oft eine App auf einem Computer oder Mobilgerät) innerhalb eines festgelegten Zeitraums an einen Dienst stellen kann. Wenn ein Client das Limit überschreitet, lehnt der Dienst weitere Anfragen ab oder verzögert sie (in der Regel durch eine HTTP-429-Antwort „Too Many Requests“), bis das Zeitfenster zurückgesetzt wird. Rate Limiting schützt einen Dienst vor Überlastung, gewährleistet einen fairen Zugriff für alle Nutzer und setzt die Nutzungsstufen durch, die viele APIs verkaufen.

Kurz gesagt: Rate Limiting begrenzt, wie viele Anfragen Sie in einem bestimmten Zeitfenster stellen können, sodass kein einzelner Client einen Dienst überlasten oder den von ihm bezahlten Plan überschreiten kann.

Wie Rate Limiting funktioniert

Ein Dienst verfolgt die Nutzung jedes Clients anhand eines definierten Kontingents:

  1. Ein Limit festlegen: Der Dienst legt ein Kontingent fest, z. B. Anfragen pro Sekunde, pro Minute oder pro Monat, oft gebunden an einen API-Schlüssel oder eine IP-Adresse.
  2. Anfragen zählen: Jede eingehende Anfrage wird auf das Kontingent angerechnet, und zwar mithilfe eines Algorithmus wie einem festen Fenster (Zurücksetzung in festgelegten Intervallen), einem gleitenden Fenster (fortlaufende Zählung über die letzten N Sekunden) oder einem Token-Bucket (ein laufendes Kontingent, das sich mit gleichbleibender Rate wieder auffüllt).
  3. Zulassen oder ablehnen: Liegt der Client unter dem Limit, wird die Anfrage bearbeitet; überschreitet der Client sein Limit, gibt der Dienst eine 429-Antwort zurück, anstatt sie zu verarbeiten.
  4. Signal an den Client: Antwort-Header des Dienstes teilen diesen Zustand mit. Ein Antwort-Header wie „RateLimit-Remaining“ kann beispielsweise anzeigen, wie viel Kontingent übrig ist, während „Retry-After“ dem Client mitteilt, wie lange er warten muss, bevor er es erneut versucht.
  5. Zurücksetzen: Wenn das Zeitfenster abgelaufen ist, füllt sich das Kontingent wieder auf, und Anfragen werden erneut akzeptiert.

Der grundlegende Gedanke ist, dass Rate Limiting ein Vertrag ist, kein Fehler: Eine 429 bedeutet, dass der Dienst einen Client bittet, langsamer zu werden, und ist kein Zeichen dafür, dass etwas nicht funktioniert.

Rate Limiting im Vergleich zu Throttling und Kontingenten

  • Rate Limiting und Throttling werden oft synonym verwendet, obwohl man sie unterscheiden kann: Rate Limiting setzt eine harte Obergrenze und lehnt Anfragen über dem Schwellenwert mit einer 429 ab, während Throttling überschüssige Anfragen verlangsamt oder in eine Warteschlange stellt, anstatt sie rundweg abzulehnen.
  • Ein Rate Limit ist in der Regel eine Obergrenze für ein kurzes Fenster, pro Sekunde oder Minute; ein Kontingent ist typischerweise ein größeres Kontingent über einen längeren Zeitraum, pro Tag oder Monat. APIs setzen oft beides gleichzeitig durch.
  • Eine 429-Antwort bedeutet, dass der Client sein Limit überschritten hat und pausieren und gemäß Retry-After (sofern vorhanden) oder einer Backoff-Richtlinie erneut versuchen sollte; eine 503-Antwort bedeutet, dass der Server nicht verfügbar ist (sei es aufgrund von Überlastung, Wartung oder einem anderen serverseitigen Problem) und nicht auf ein Client-Kontingentproblem hinweist.

Wo Rate Limiting wichtig ist

  • Aufbau auf einer beliebigen API: Gut funktionierende Clients respektieren Retry-After, wenden exponentielles Backoff mit Jitter an (progressiv längere Wartezeiten zwischen Wiederholungen, mit zusätzlicher Zufälligkeit, um zu vermeiden, dass mehrere Clients gleichzeitig erneut versuchen) und beobachten RateLimit-Remaining, um langsamer zu werden, bevor die Obergrenze erreicht wird.
  • Hochvolumige und agentische Workloads: Ein agentisches Suchsystem, das viele Aufrufe in einer Schleife auslöst, kann Limits schnell erreichen, daher sind Anfragen-Warteschlangen und Backoff unerlässlich.
  • Crawling: Wenn eine Site wiederholt 429s zurückgibt, reduzieren Such-Crawler ihr Crawl-Budget dafür, bis normale Antworten wieder aufgenommen werden.
  • Such-APIs: Eine Such-API veröffentlicht Rate Limits pro Plan, in der Regel als Anfragen pro Sekunde und pro Monat. Die Wahl einer Stufe bedeutet also, diese Limits an Ihr erwartetes Abfragevolumen anzupassen; ein reibungsloser Umgang mit 429s hält eine Antwort-Pipeline auch bei Traffic-Spitzen zuverlässig, und höhere, besser vorhersehbare Limits wirken sich in erster Linie auf den Durchsatz und die client-side Warteschlangenbildung aus, wobei die Auswirkungen auf die Latenz in der Regel indirekt und workload-abhängig sind.

Rate Limiting ist Teil des Vertrags zwischen einem Client und jeder API: Wer damit statt dagegen plant, sorgt dafür, dass eine Integration auch beim Wachstum stabil bleibt.

Verwandte Begriffe

Durchsatz, Latenz, HTTP 429, Retry-After, exponentielles Backoff, Kontingent, API-Schlüssel, Crawl-Budget, Such-API.

Brave logo

Fast geschafft …

Bitte setzen Sie die Installation von Brave fort in der .

Bitte setzen Sie die Installation von Brave fort in der .

Sie sind nur 60 Sekunden von der besten Privatsphäre im Internet entfernt

  1. Brave herunterladen
  2. Führen Sie das Installationsprogramm aus
  3. Einstellungen importieren
  1. schritt 1
    Brave herunterladen

    Öffnen Sie das Installationsprogramm aus den Chrome-Downloads (es sollte sich in der oberen rechten Ecke dieses Fensters befinden).

  2. schritt 2
    Führen Sie das Installationsprogramm aus

    Wenn Sie dazu aufgefordert werden, klicken Sie im Dialogfeld 'Benutzerzugriffskontrolle' auf „Ja“.

  3. schritt 3
    Einstellungen importieren

    Warten Sie, bis die Installation abgeschlossen ist, und importieren Sie dann Ihre Browsereinstellungen aus Chrome.

Wenn Ihr Download nicht automatisch gestartet wurde, klicken Sie auf .

Benötigen Sie Hilfe?