10 Top Open Source API Gateways og styringsværktøjer


Microservices og API'er (forkortelse for Application Programming Interfaces) er blevet næsten almindeligt i bæredygtig moderne applikationsudvikling. API'er driver mikrotjenester (et arkitektonisk design, der strukturerer en applikation i små, selvstændige og håndterbare tjenester/stykker), og de definerer, hvordan en forbruger (af API'en) kan interagere med og bruge den underliggende tjeneste.

For virksomheder og andre organisationer er API'er blevet kernen i strategier for digital transformation. Væksten i brugen af API'er har øget udviklernes brug af API-styringsløsninger til at offentliggøre deres API'er til offentlige eller eksterne udviklere, interne udviklere såvel som andre partnere.

Et API-styringsværktøj kan hjælpe dig med at:

  • Expose microservices as managed APIs.
  • Combine several microservices to be exposed as APIs.
  • Apply security to internal and external microservices.
  • Expose legacy services as modern APIs.
  • Obtain business insights from the consumption of microservices and APIs, and much more.

Leder du efter en open source API-styringsløsning til din virksomhed? Så er denne guide lavet lige til dig, fortsæt med at læse.

Nedenfor har vi delt de 10 bedste open source API-gateways og API-styringsløsninger, du kan bruge i din IT-infrastruktur. Bemærk, at følgende liste er organiseret i ingen særlig rækkefølge.

1. Kong Gateway (OSS)

Kong Gateway (OSS) er en populær, open source og avanceret cloud-native API-gateway bygget til universel implementering: den kan køre på enhver platform. Det er skrevet på Lua-programmeringssprog og understøtter hybrid- og multi-cloud-infrastruktur, og det er optimeret til mikrotjenester og distribuerede arkitekturer.

Kong er i sin kerne bygget til høj ydeevne, udvidelighed og bærbarhed. Kong er også let, hurtig og skalerbar. Det understøtter deklarativ konfiguration uden en database, der kun bruger hukommelse i hukommelsen og native Kubernative CRD'er.

Kong har belastningsbalancering (med forskellige algoritmer), logning, godkendelse (understøttelse af OAuth2.0), hastighedsbegrænsende, transformationer, live overvågning, serviceopdagelse, caching, fejldetektering og gendannelse, klyngedannelse og meget mere. Det er vigtigt, at Kong understøtter klyngen af noder og serverløse funktioner.

Det understøtter konfigurationen af fuldmagter til dine tjenester og serverer dem via SSL eller bruger WebSockets. Det kan indlæse balancetrafik gennem replikaer af dine upstream-tjenester, overvåge tilgængeligheden af dine tjenester og justere dens belastningsbalancering i overensstemmelse hermed.

Derudover leveres Kong med en kommandolinjegrænseflade, der giver dig mulighed for at administrere en Kong-klynge fra kommandolinjen. Kong er også meget udvidelig ved hjælp af plugins og forskellige former for integrationer. Det kan administreres med sin RESTful API for maksimal fleksibilitet.

2. Tyk

Tyk (udtalt Taik) er en open source, kraftfuld, letvægts og fuldt udstyret API-gateway skrevet fra bunden ved hjælp af Go-programmeringssproget. Det er cloud-native, yderst performant med en let udvidelig og tilslutbar arkitektur baseret på åbne standarder.

Det kan køre uafhængigt og kræver kun Redis som et datalager. Det giver brugerne mulighed for sikkert at udgive og administrere en række tjenester, herunder arv, REST og GraphQL (understøtter GraphQL ud af boksen).

Tyk er bagt med så mange funktioner, som inkluderer en række godkendelsesmetoder, kvoter og hastighedsbegrænsning, versionskontrol, meddelelser og begivenheder, overvågning og analyse. Det understøtter også serviceopdagelse, on-the-fly transformationer og virtuelle slutpunkter og giver mulighed for at oprette mock out API'er før frigivelse.

Mere til ovenstående understøtter Tyk API-dokumentation og tilbyder en API-udviklerportal, et CMS (Content Management System) -lignende system, hvor du kan udgive dine administrerede API'er og tredjepartsudviklere tilmelde dig, tilmelde dig dine API'er og kan administrere deres egne nøgler.

Det er vigtigt, at der kun er en version af Tyk API Gateway, og den er 100% Open Source. Uanset om du er en Community Edition-bruger eller en virksomhedsbruger, får du den samme API Gateway. Den leveres med alle mulige dele, der kræves for fuld brugervenlighed, uden funktionsspærring og ingen sort boks. Med Tyk lærer du nøjagtigt, hvordan dine data behandles.

3. KrakenD

KrakenD er også skrevet i Go og bygget med ydeevne i tankerne og er en højtydende open source, enkel og tilslutbar API-gateway designet med statsløs arkitektur. Det kan køre overalt og kræver ingen database at køre. Det har en enkel konfiguration og understøtter ubegrænsede slutpunkter og backends.

KrakenD har overvågning, caching, brugerkvote, hastighedsbegrænsning, servicekvalitet (samtidige opkald, afbryder og kornet timeout) transformation, aggregering, (flette kilder), filtrering (hvidliste og sortliste) og afkodning. Det tilbyder proxy-funktioner såsom belastningsbalancering, protokoloversættelse og Oauth; og sikkerhedsfunktioner såsom SSL og sikkerhedspolitikker.

Du kan konfigurere API-gatewayadfærden manuelt eller ved hjælp af KrakenDesigner, en GUI, der giver dig mulighed for visuelt at designe din API fra bunden eller genoptage en eksisterende. Derudover giver KrakenDs udvidelige arkitektur mulighed for at tilføje yderligere funktioner, plug-ins, indlejrede scripts og mellemværker uden at ændre kildekoden.

4. Gravitee.io API-platform

Gravitee.io er en open-source, Java-baseret, brugervenlig API-styringsplatform, der hjælper organisationer med at sikre, offentliggøre, analysere og dokumentere deres API'er. Den leveres med tre hovedmoduler, som er:

  • API Management (APIM): an open-source, simple yet powerful, flexible, lightweight, and blazing-fast API management (APIM) solution designed to give your organization full control over who accesses your APIs, when, and how.
  • Access Management (AM): a flexible, lightweight, versatile, and easy-to-use Open Source Identity And Access Management solution. It is based on OAuth2/OpenID Connect protocols and acts as an identity provider broker. It features a centralized Authentication and Authorization Service to secure your applications and your APIs.
  • Alert Engine (AE): a module that allows users to configure alerts and receive notifications to easily and efficiently monitor their API platform. It supports multi-channel notifications and suspicious behavior detection, and more.

Derudover leveres Gravitee.io med Cockpit, et værktøj, der hjælper dig med at designe dine API'er og offentliggøre dem i alle dine miljøer med fuldt udstyret support til flere lejeboliger. Det giver dig mulighed for at skalere din Gravitee.io-implementering fra selve platformen. Og graviteeio-cli, et simpelt kommandolinjeværktøj, der bruges til at styre Gravitee.io-økosystemet.

5. Gloo Edge

Også open source og Go-baseret, Gloo Edge er en funktionsfyldt Kubernetes-indfødt indgangs-controller (bygget oven på Envoy Proxy) og en næste generations cloud-native API-gateway, der understøtter ældre apps, mikrotjenester samt serverløs . Og det integreres med dit miljø, så du kan vælge dine yndlingsværktøjer til planlægning, vedholdenhed og sikkerhed.

Det tilbyder kraftfuld routing på funktionelt niveau (der muliggør integration af ældre apps, mikrotjenester og serverfri) og er designet til at understøtte hybridapplikationer bygget ved hjælp af forskellige slags teknologier, arkitekturer og protokoller, der kører på forskellige skyer.

Gloo Edge understøtter API-gatewayfunktioner såsom hastighedsbegrænsning, kredsløb, forsøg, caching, ekstern godkendelse og godkendelse. Det understøtter også transformation, service-mesh integration, fuld automatiseret opdagelse og sikkerhed.

Gloo Edge beskæftiger top open source-projekter som GraphQL, gRPC, OpenTracing, NATS og mere til at levere funktioner af høj kvalitet. Desuden understøtter det integrationen af open source-projekter, der muligvis kommer til overfladen i fremtiden.

6. Goku API Gateway

Goku API Gateway er en open source-mikroservicegateway med en cloud-native arkitektur bygget med Go. Det fungerer som en API-gateway til mikrotjenestearkitektur; som en platform til samlet godkendelse, flowkontrol, sikkerhedsbeskyttelse som en intern OPEN API-udviklingsplatform; og som en samlet platform til tredjeparts-API'er.

Den har højtydende HTTP-videresendelse og dynamisk routing, service orkestrering, multi-tenancy management, API adgangskontrol og meget mere. Det understøtter implementering af klynger og dynamisk registrering af tjenester, balancering af backendbelastning, API-sundhedstjek, API-afbrydelse og genopretningsfunktionalitet, hot update (opdaterer løbende konfigurationer uden genstartnoder).

Goku leveres også med et indbygget dashboard for at gøre konfigurationen nemmere, et kraftfuldt plug-in-system for at udvide dets funktionalitet og en CLI til start \ stop nuad Goku gennem kommandolinjen.

7. WSO2 API Microgateway

WSO2 API Microgateway er en open-source cloud-native, udvikler-centreret og decentral API-gateway til mikrotjenester. Bygget hovedsageligt ved hjælp af Java, forenkler det processen med at oprette, implementere og sikre API'er inden for distribuerede mikroservicearkitekturer.

WSO2 API Microgateway er en letvægts stateløs beholder med fodspor med lav hukommelse, der understøtter komponering af flere mikrotjenester via en enkelt API og understøtter også opdagelse af runtime-tjenester. Det giver mulighed for at omdanne ældre API-formater (både anmodninger og svar) til moderne, for at udsætte dem for moderne forbrugerapps.

Da WSO2 API Microgateway bruger OpenAPI Specification (OAS), giver dette udviklere mulighed for at samarbejde om at oprette API'er og derefter teste dem uafhængigt. Desuden er den meget skalerbar, da den kan køre isoleret uden afhængighed af andre komponenter.

Den indeholder hastighedsbegrænsende, serviceopdagelse, anmodning og reaktionstransformation, belastningsbalancering, failover og kredsløb, sømløs Docker og Kubernetes integration blandt andre. Det giver godkendelse og godkendelse baseret på OAuth2.0, API-nøgler, Basic Auth og gensidig TLS.

8. Fusio

Fusio er en open source, PHP-baseret API-styringsløsning, der bruges til at opbygge og administrere REST API'er. Det er en API-styringsplatform i den forstand, at det giver dig mulighed for at udvikle API-slutpunkter, der kan anmode om og omdanne data fra en database. Det giver alle de nødvendige værktøjer til ikke kun hurtigt at opbygge en API fra forskellige datakilder, men også til at skabe fuldt tilpassede svar.

Det bruges til at eksponere forretningsfunktionalitet, mikrotjenester, Javascript-applikationer og mobilapps, der tilbyder funktioner såsom hastighedsbegrænsning, autorisation, RPC-support, validering, analyse og brugeradministration.

Fusio understøtter også OpenAPI-generation, SDK-generation og leveres med et abonnementslag, der hjælper dig med at opbygge en pub/sub til din API og et simpelt betalingssystem til betaling for specifikke ruter.

Fusio indeholder en kommandolinjeklient, der giver dig mulighed for direkte at interagere med API'en og implementere specifikke YAML-konfigurationsfiler. Fusio-CLI inkluderes automatisk i enhver Fusio-installation, men du kan også køre CLI-klienten standalone. Der er flere andre værktøjer i Fusio-økosystemet.

9. Apiman

Apiman er et open-source, Java-baseret API Management-værktøj, der leveres med et rigt API-design- og konfigurationslag med en lynhurtig runtime. Det er et enkeltstående system, der enten kan køres som et separat system eller integreres i eksisterende rammer og platforme.

Dens nøglefunktioner er fleksibilitet og politikbaseret runtime-styring for API'er, rig administrationslag og dets fuldt asynkrone. Det understøtter kvælning og kvoter, centraliseret sikkerhed og fakturering og målinger og mange andre funktioner.

10. API-paraply

API Umbrella er en open source API-styringsløsning, der hovedsagelig er bygget med Ruby. Det er en proxy, der sidder foran dine API'er, så du kan oprette et enkelt, offentligt indgangspunkt til alle dine API'er og mikrotjenester, uanset hvor de er placeret. Det tilbyder funktionalitet såsom API-nøgler, hastighedsbegrænsning, analyse og caching.

Det understøtter multitenancy og leveres med en administrator til at styre alle aspekter af API Umbrella, såsom konfiguration af API-routing, brugeradministration, visningsanalyse og mere. Under API Umbrella er al administrativ funktionalitet også tilgængelig via REST API.

Det er det for nu! I denne artikel har vi gennemgået 10 open source API-gateways og styringsløsninger, du kan bruge på en Linux-server i din infrastruktur. Du er velkommen til at fortælle os om andre løsninger, du er stødt på, men vi har savnet i denne artikel.