Privacy Settings

We use cookies to improve your experience and analyze traffic. You can accept all cookies or customize your preferences. Learn more in our Privacy Policy .

OnCloud

Begreb

API gateway

•
2 min
•
Grundlæggende

En API gateway er en fælles indgang mellem klienter og bagvedliggende API-tjenester. Den modtager API-kald, sender dem til den rigtige tjeneste og returnerer svaret til klienten.

Gatewayen fungerer ofte som en specialiseret reverse proxy og kan håndtere autentificering, tokenkontrol, TLS, rate limiting, logning og overvågning.

Hvorfor er begrebet vigtigt?

En API gateway kan give klienter ét stabilt endpoint, selv om tjenesterne ændres. Fælles politikker kan anvendes ensartet, så hver tjeneste ikke selv skal implementere tokenkontrol, trafikbegrænsning og logning.

Gatewayen ligger dog i den kritiske trafikvej. Uden planlagt kapacitet, redundans og fejlhåndtering kan den blive en flaskehals eller et enkelt fejlpunkt.

Typisk misforståelse

En API gateway er ikke hele API-platformen eller selve de bagvedliggende API'er. Den bør normalt håndtere routing og tværgående funktioner, mens forretningslogik forbliver i tjenesterne.

Funktionerne overlapper med en almindelig reverse proxy, men en API gateway har typisk API-specifikke kontroller som tokenvalidering, kvoter og versionsrouting.

Eksempel

En fiktiv webshop har separate tjenester til kunder, lager og ordrer. Mobilappen sender alle kald til samme API gateway. Gatewayen kontrollerer tokenet, begrænser trafikken, vælger tjenesten og registrerer resultatet. Appen behøver ikke kende de interne tjenesteadresser.

Best practice

  • Placér fælles funktioner i gatewayen, men undgå forretningslogik.

  • Brug høj tilgængelighed, kapacitetsplanlægning og belastningstest.

  • Definér timeouts og tydelig fejlhåndtering. Brug kun retries til idempotente kald eller sammen med en idempotensmekanisme.

  • Begræns trafik med rate limits og passende kvoter.

  • Brug korrelations-id'er, metrics og sikre logs til fejlfinding.

  • Undgå hemmeligheder og følsomme data i logs og fejlbeskeder.

Frequently asked questions

Nej. En load balancer fordeler primært trafik mellem instanser. En API gateway arbejder normalt på applikationslaget og håndterer API-politikker. Ét produkt kan dog udføre begge roller.

Nej. Et enkelt internt API med få klienter kan ofte fungere uden. En gateway er især relevant, når flere tjenester, klienttyper eller fælles politikker skal styres samlet.

API gatewayen håndterer trafikken. API management er bredere og kan også omfatte design, dokumentation, publicering, versionsstyring, udvikleradgang og analyse. Gatewayen er ofte én del af platformen.


Andre begreber