Onafhankelijke vergelijking · geen betaalde rankings
Home / Blog / Gids / Lanceer een publieke API: stel limieten in voordat klanten arriveren

Lanceer een publieke API: stel limieten in voordat klanten arriveren

Een publieke API zonder snelheidsbeperking, quota en zichtbaarheid leidt altijd tot verzadiging van de database – vaak door een enkele “vertrouwde” client die slecht in de loop zit.

Redactie Hébergeurs.eu 4 min Bijgewerkt 23 mei 2026

Een SaaS-uitgever stelt zijn API open voor integrators. Twee weken later synchroniseert een ERP-partner 200.000 productbladen in een lus – zonder paginering – gedurende een weekend. Maandagochtend: PostgreSQL-database op 100% CPU, Cloud-facturen verdrievoudigd, hoofdklanten hebben time-out. Uit de post-mortembijeenkomst blijkt dat er geen quotum, geen alarm, geen gedocumenteerde 429 was.

Het openen van een openbare API betekent niet dat eindpunten worden blootgelegd. Het betekent accepteren dat onbekenden uw kosten zullen beheren — soms uit boosaardigheid, vaak door een integratiefout. Limieten moeten vóór de eerste klant bestaan, niet na de eerste uitval.

De vier niet-onderhandelbare waarborgen

VangrailZonder hemMinimaal levensvatbaar
AuthenticatieAnoniem misbruikAPI-sleutel of OAuth2-clientreferenties
SnelheidslimietOneindige lussenOp sleutel + op back-up-IP
QuotaEen klant monopoliseertGedocumenteerd verzoek/dag + burst/min
WaarneembaarheidBlinde postmortemGestructureerde logboeken, p95-statistieken, 429/5xx-waarschuwingen

Een API zonder 429 is een API die beleefdheid en robuustheid door elkaar haalt. Door op de juiste manier te ontslaan, wordt iedereen beschermd.

Tariefbeperking: strategie per niveau

Voorbeeld van een openbaar net:

NiveauBurst/minQuotum/dagTypisch gebruik
Zandbak301.000Ontwikkelaar, testen
Standaard12050.000MKB-integrator
Partner600500.000ERP, marktplaats

Implementatie:

  • Nginx limit_req_zone voor globale IP-limiet.
  • Redis-teller met api_key voor dagelijkse quota.
  • Gateway (Traefik, Kong) om te centraliseren zonder de app opnieuw te implementeren.

Reageer met 429 met Retry-After en expliciete JSON-body — niet door de client een TCP-time-out te laten raden.

Voor technische details, zie Rate limiting: een API beschermen zonder goede klanten te straffen.

Hostinggrootte: de basis telt meer dan de CPU-API

Een “eenvoudig” API-verzoek kan het volgende kosten:

  • 1 geïndexeerd SELECT → 2 ms
  • 1 SELECT zonder index + JOIN → 800 ms × 500 req/s → dood

Controlelijst hieronder:

  1. Paginatie vereist (limiet max. 100, cursor voorkeur).
  2. Cache Redis op idempotente leesbewerkingen (catalogus, repository's).
  3. Verbindingspool (PgBouncer) — zie Verbindingspool.
  4. Afzonderlijke werkers zware synchronisatie versus interactieve API.
  5. Automatisch schalen op de wachtrijdiepte, niet alleen op de CPU.

Gedeeld: nee voor serieuze openbare API. Minimale VPS; cloud met load balancer van verschillende betalende klanten.

Versiebeheer, beëindiging en communicatie

Technische limieten zonder productlimieten = schuld:

  • Voorvoegsel /v1/ bevroren; brekende wijziging = /v2/.
  • Kop 'Zonsondergang' en e-mail 90 dagen vóór opname.
  • Incidentstatus of RSS-pagina: integrators lezen niet altijd de interne Slack.

Waarneembaarheid: statistieken die waarschuwen vóór Twitter

  • p95/p99 latentie per eindpunt (niet alleen gemiddeld).
  • Snelheid 429 per toets — detecteert wankele integratie vóór verzadiging.
  • Actieve DB-verbindingen versus maximale pool.
  • Topconsumenten: wekelijkse tabel met de meest hebzuchtige sleutels.

Waarschuw als p95 > Interne SLA gedurende 5 minuten of als een sleutel om 14.00 uur het quotum van 80% overschrijdt.

De top: de slechtste klant is degene die een contract heeft getekend

Marketing wil “Open API”. Financiën willen voorspelbaarheid. De operatie moet flexibele muren opleggen: hoog genoeg voor goed gebruik, zichtbaar genoeg om fouten vóór de basis te voorkomen.

Beslis en ga vooruit zonder blinde vlek

  1. Publicatielimieten + voorbeelden 429 vóór de eerste sleutel.
  2. Load-test met “looping client”-scenario (niet alleen happy path).
  3. Redis + PgBouncer vóór lancering door partners.
  4. Dashboard-topconsumenten worden de eerste maand elke week beoordeeld.
  5. Runbook: een sleutel knippen, alleen-lezen verslechterde modus, status communiceren.

Vergelijk VPS en cloud in onze overzicht en vergelijking.

Veelgestelde vragen

Is er een snelheidslimiet nodig vanaf v1?

Ja – zelfs bescheiden – om onbedoelde herhalingen te voorkomen en vroegtijdig quota vast te stellen.

Waar moet ik de snelheidslimiet plaatsen?

Nginx + minimale API-sleutel; toegangspoort voor geavanceerd beleid; code voor bedrijfsregels.

Hoe kan ik de hosting van een API bepalen?

Pieken per client, doel-p95, DB-kosten/query; caching en paging vóór horizontale schaal.

Wat moet u documenteren voordat u het opent?

Limieten per niveau, 429, Opnieuw proberen, afschrijving, incidentstatus.


Een volwassen publieke API wijst verzoeken netjes af, voordat de database iedereen zonder voorafgaande kennisgeving weigert.

Vergelijk Europese providers

Filter op compliance, locatie en gebruikssituatie — open daarna de fiches om het echte bereik te controleren.

Blader door het overzicht
Blog

Gerelateerde lectuur

Alle artikelen →