Rate Limits
Zwei Familien von Limits - was der Plan erlaubt und wie schnell jemand einen Endpoint aufrufen darf - mit Zahlen aus der API, die sie durchsetzt.
cmssy setzt zwei verschiedene Arten von Limits durch, und sie beantworten verschiedene Fragen. Ein Plan-Kontingent sagt, wie viel Produkt deine Organisation gekauft hat: Seiten, Speicher, Delivery-Requests pro Monat. Ein Schutzlimit sagt, wie schnell irgendjemand einen Endpoint aufrufen darf - in jedem Plan. Ein Request kann bequem innerhalb deines Kontingents liegen und trotzdem von einem Schutzlimit abgewiesen werden, und dieses Limit ist es, das mit 429 antwortet.
Was ein 429 bedeutet
Jedes Schutzlimit weist gleich ab: HTTP 429 mit einem Retry-After-Header, der die Sekunden bis zum Öffnen des Fensters trägt. Warte so lange und versuche es dann erneut.
Das Fenster ist fest, kein Eimer, der leerläuft, während du klopfst. Ein Client, der 429 wie 500 behandelt und sofort neu versucht, bleibt für den Rest des Fensters abgewiesen und verbrennt dabei die eigene Kapazität. Lies den Header.
Delivery wird pro Workspace budgetiert
Die Delivery-API rufst du von deinem eigenen Server auf, also gilt ihr Budget pro Workspace, nicht pro Aufrufer. Jeder Besucher deiner Seite wird aus einer Handvoll deiner regionalen IPs gerendert, und ein Crawler, der einen kalten Cache aufwärmt, würde ein Aufrufer-Budget in Sekunden verbrauchen. Die zweite Delivery-Zeile ist genau dieses weitere Missbrauchsnetz, gezählt pro Aufrufer - Token und IP zusammen, zwei Token hinter einer Adresse bekommen also zwei Kübel - und nicht das Budget, mit dem deine Seite arbeitet.
Jeder Read zählt, gecacht oder nicht. Ein CDN vor deiner Seite ist genau das, was dich im Budget hält, weil es die Reads abschneidet, die uns überhaupt erreichen - aber ein Read, der uns erreicht, wird gezählt, ob du die Antwort cachst oder nicht.
Tiefe ist kein Tempo
Zwei Limits messen Ebenen statt Requests: Eine Query, die tiefer verschachtelt ist als das Limit, wird sofort abgelehnt, und Warten ändert daran nichts. Flache die Query ab.
Monatliche Kontingente sind gepoolt
Plan-Kontingente gehören der Organisation, nicht einem einzelnen Workspace. Delivery-Requests und Bandbreite werden über alle Workspaces der Organisation gepoolt und für den Kalendermonat gezählt.
Die Tabellen lesen
Beide Tabellen unten werden von der API geliefert, die die Zahlen durchsetzt, also kann diese Seite nicht vom Produkt abweichen. Als anpassbar markierte Zeilen kann ein Betreiber für ein Deployment verschieben; jede andere Zahl gilt für alle gleich.