Ein SaaS-Herausgeber öffnet seine API für Integratoren. Zwei Wochen später synchronisiert ein ERP-Partner über ein Wochenende hinweg 200.000 Produktblätter in einer Schleife – ohne Paginierung. Montagmorgen: PostgreSQL-Datenbank mit 100 % CPU, Cloud-Rechnungen verdreifacht, Hauptkunden im Timeout. Die Obduktion ergab, dass es keine Quote, keine Warnung, keine dokumentierten 429 gab.
Das Öffnen einer öffentlichen API bedeutet nicht, dass Endpunkte offengelegt werden. Es geht darum zu akzeptieren, dass Unbekannte Ihre Ladung kontrollieren – manchmal aus Bosheit, oft aufgrund eines Integrationsfehlers. Grenzwerte sollten vor dem ersten Kunden bestehen, nicht nach dem ersten Ausfall.
Die vier nicht verhandelbaren Schutzmaßnahmen
| Leitplanke | Ohne ihn | Minimale Rentabilität |
|---|---|---|
| Authentifizierung | Anonymer Missbrauch | API-Schlüssel oder OAuth2-Client-Anmeldeinformationen |
| Ratenbegrenzung | Endlosschleifen | Per Schlüssel + per Backup-IP |
| Kontingente | Ein Kunde monopolisiert | Dokumentierte Anforderung/Tag + Burst/Min. |
| Beobachtbarkeit | Blinde Obduktion | Strukturierte Protokolle, P95-Metriken, 429/5xx-Warnungen |
Eine API ohne 429 ist eine API, die Höflichkeit und Robustheit verwechselt. Eine ordnungsgemäße Entlassung schützt alle.
Ratenbegrenzung: Strategie nach Stufe
Beispiel für ein öffentliches Netz:
| Stufe | Burst/min | Kontingent/Tag | Typische Verwendung |
|---|---|---|---|
| Sandkasten | 30 | 1.000 | Entwicklung, Test |
| Standard | 120 | 50.000 | KMU-Integrator |
| Partner | 600 | 500.000 | ERP, Marktplatz |
Umsetzung:
- Nginx
limit_req_zonefür globale IP-Obergrenze. - Redis-Zähler von „api_key“ für tägliche Kontingente.
- Gateway (Traefik, Kong) zur Zentralisierung ohne erneute Bereitstellung der App.
Antworten Sie mit 429 mit „Retry-After“ und explizitem JSON-Body – und lassen Sie den Client nicht eine TCP-Zeitüberschreitung erraten.
Technische Details finden Sie unter Ratenbegrenzung: Eine API schützen, ohne gute Clients zu bestrafen.
Hosting-Größe: Die Basis zählt mehr als die CPU-API
Eine „einfache“ API-Anfrage kann Folgendes kosten:
- 1 indiziertes SELECT → 2 ms
- 1 SELECT ohne Index + JOIN → 800 ms × 500 req/s → tot
Checkliste unten:
- Paginierung erforderlich (
Limitmax. 100, Cursor bevorzugt). - Cache Redis für idempotente Lesevorgänge (Katalog, Repositorys).
- Verbindungspool (PgBouncer) – siehe Verbindungspool.
- Getrennte Worker starke Synchronisierung im Vergleich zur interaktiven API.
- Autoskalierung der Warteschlangentiefe, nicht nur der CPU.
Geteilt: Nein für seriöse öffentliche API. Mindest-VPS; Cloud mit Load Balancer von mehreren zahlenden Kunden.
Versionierung, Veraltung und Kommunikation
Technische Grenzen ohne Produktgrenzen = Schulden:
- Präfix „/v1/“ eingefroren; Breaking Change =
/v2/. - Kopfzeile „Sonnenuntergang“ und E-Mail 90 Tage vor der Auszahlung.
- Vorfallstatus oder RSS-Seite – Integratoren lesen nicht immer internes Slack.
Beobachtbarkeit: Metriken, die vor Twitter alarmieren
- p95/p99-Latenz pro Endpunkt (nicht nur Durchschnitt).
- Rate 429 pro Taste – erkennt wackelige Integration vor der Sättigung.
- Aktive DB-Verbindungen vs. maximaler Pool.
- Top-Verbraucher: Wochentabelle der gierigsten Schlüssel.
Warnung, wenn p95 > Internes SLA für 5 Minuten oder wenn ein Schlüssel um 14:00 Uhr das Kontingent von 80 % überschreitet.
Der Gipfel: Der schlechteste Kunde ist derjenige, der einen Vertrag unterzeichnet hat
:::Höhepunkt Die kostspieligsten Missbräuche gehen nicht von Bots aus – sie kommen vom „strategischen“ Partner, dessen Synchronisierungsskript noch nie von Paging gehört hat. Ohne vertragliche und technische Ratenbegrenzung kann Ihr bester Kunde zum schlimmsten Vorfall werden. :::
Marketing will „Open API“. Die Finanzwelt will Vorhersehbarkeit. Der Betrieb muss flexible Wände vorsehen: hoch genug für gute Zwecke, sichtbar genug, um Fehler vor der Basis zu stoppen.
Entscheide dich und gehe ohne blinden Fleck voran
- Veröffentlichen Sie Limits + Beispiele 429 vor dem ersten Schlüssel.
- Auslastungstest mit „Schleifen-Client“-Szenario (nicht nur Happy Path).
- Redis + PgBouncer vor dem Partnerstart.
- Dashboard-Top-Konsumenten, die im ersten Monat jede Woche überprüft werden.
- Runbook: Schlüssel schneiden, schreibgeschützter eingeschränkter Modus, Status kommunizieren.
Vergleichen Sie VPS und Cloud in unserem Verzeichnis und Vergleich.
Häufig gestellte Fragen
Ist ab Version 1 eine Ratenbegrenzung erforderlich?
Ja – sogar bescheiden – um versehentliche Schleifen zu vermeiden und Quoten frühzeitig festzulegen.
Wo soll die Ratenbegrenzung erfolgen?
Nginx + minimaler API-Schlüssel; Gateway für erweiterte Richtlinien; Code für Geschäftsregeln.
Wie dimensioniere ich das Hosting einer API?
Spitzen pro Kunde, Ziel p95, DB-Kosten/Abfrage; Caching und Paging vor der horizontalen Skalierung.
Was ist vor dem Öffnen zu dokumentieren?
Beschränkungen nach Stufe, 429, Wiederholungsversuch nach, Abschreibung, Vorfallstatus.
Eine ausgereifte öffentliche API lehnt Anfragen ordnungsgemäß ab – bevor die Datenbank alle ohne Vorankündigung ablehnt.
