API-Gateway-Trends hinter den Features: Apache APISIX 3.0 vs. Kong 3.0
Am 28. September 2022 veröffentlichte Kong die neue Kong Gateway 3.0, die einige neue Funktionen und Leistungsverbesserungen erreichte. Am 21. September veröffentlichte auch Apache APISIX, ein Top-Level-Projekt der Apache Software Foundation, die Vorschauversion von Apache APISIX 3.0, die zehn Highlights in Bezug auf Ökosystem und Funktionen vorstellte.
Lassen Sie uns einen genaueren Blick auf Version 3.0 dieser beiden beliebten Open-Source-API-Gateway-Projekte werfen und die Entwicklungstrends hinter diesen Updates herausfinden.
Zuerst betrachten wir die acht Highlights von Kong Gateway 3.0.
Acht Highlights von Kong Gateway 3.0
Highlights | OSS/Enterprise | Typ | Zielgruppe | Verbesserung | Unterstützt APISIX | Anmerkungen |
---|---|---|---|---|---|---|
FIPS 140-2 | Enterprise-Version | Compliance | Nordamerikanische Finanzunternehmen und Regierungen | Compliance | Nein | Nicht anwendbar |
Secrets Management | beide | Compliance | Finanzunternehmen | OSS: Umgebungsvariablen Enterprise: AWS Secrets Manager und HashiCorp Vault | Ja | APISIX unterstützt HashiCorp Vault seit Dezember 2021 in OSS: feat(vault): vault lua module, integration with jwt-auth authentication plugin Kong Februar 2022: feat(vaults) adds vaults beta support to kong |
Plugin Ordering | Enterprise-Version | Usability | Große und mittelständische Unternehmen mit komplexen Szenarien | Erhöhung der Geschäftsflexibilität mit Plugins | Ja | APISIX Juni 2022: feat: allows users to specify plugin execution priority Kong Juli 2022: feat(plugins) add support for ordering |
Kong Manager 3.0 | Enterprise-Version | Usability | Mittelständische und große Unternehmen ohne viele technische Teams | Bessere Verwaltung von APIs für Unternehmensnutzer | Ja | Nicht anwendbar |
Deep Websocket Support | Enterprise-Version | Funktion | Unternehmensnutzer, die Websockets intensiv nutzen | Überprüfung des Websocket-Schemas und Begrenzung der Websocket-Framegröße | Ja, teilweise | Kong Dezember 2016: feat(proxy) supports websockets APISIX unterstützt Websocket-Request-Proxy und kann mit Plugins wie limit-conn verwendet werden seit Januar 2020: feature: upstream support websocket enable |
OpenTelemetry | beide | Funktion | Große und mittelständische Unternehmen mit komplexen Geschäftsprozessen | Verbesserung der Beobachtbarkeit | Ja | Kong Juni 2022: feat(plugins) opentelemetry plugin APISIX Januar 2022: feat: add opentelemetry plugin |
Performance Improvements | beide | Leistung | Cloud-Anbieter, schnell wachsende SaaS-Anbieter | Reduzierung der Serverkosten | Ja | Apache APISIX übertrifft seit seiner Open-Source-Veröffentlichung im Jahr 2019 andere API-Gateways in der Leistung. |
New Routing Engine | beide | Leistung | Cloud-Anbieter, schnell wachsende SaaS-Anbieter | Lösung von Leistungsproblemen bei einer großen Anzahl von APIs und Reduzierung der Serverkosten | Ja | Kong Juli 2022: feat(router) new DSL based router support and tests fix APISIX August 2019: feature: supported to use router lua-resty-radixtree |
Wir können drei Trends aus den Highlights von Kong Gateway 3.0 analysieren:
- Kongs Investitionen in Sicherheit und Compliance im Finanzsektor sind relativ groß, was anhand der Compliance mit FIPS 140-2 und Secrets Management analysiert werden kann.
-
Compliance mit FIPS 140-2: FIPS 140-2 ist ein Computersicherheitsstandard, der von nordamerikanischen Finanzunternehmen und Regierungen zur Genehmigung von Verschlüsselungsmodulen verwendet wird. Kong Gateway 3.0 Enterprise-Version basiert auf BoringSSL und wird Plugins anpassen, um die Anforderungen des Standards zu erfüllen. Kongs Unterstützung für FIPS 140-2 spiegelt Kongs Entwicklungsphase wider: Nach sieben Jahren der Iteration konzentriert sich Kong zunehmend auf zahlende Nutzer und tendiert dazu, die Bedürfnisse von Finanzunternehmen und Regierungen zu erfüllen.
-
Secrets Management: Die Zielgruppe dieser Funktion sind ebenfalls Finanzunternehmen. Kong Gateway 3.0 ermöglicht es Benutzern, sensible Informationen sicher in AWS Secrets Manager und HashiCorp Vault zu speichern, auf die Kong zur Laufzeit zugreifen kann. Auf diese Weise wird ein höheres Maß an Sicherheitsschutz erreicht.
-
Aus den PR-Links der einzelnen Highlights können wir ersehen, dass die meisten der acht Highlights von Kong Gateway 3.0 früher von Apache APISIX implementiert wurden.
-
Kong Gateway 3.0 hat eine relativ deutliche Leistungsverbesserung aus zwei Gründen:
-
Kong fügt eine Cache-Ebene auf dem Routing hinzu, was die Leistung für den Benchmark erheblich verbessert. Das Problem ist jedoch, dass der Cache ungültig wird, wenn sich die URL-Adresse ändert. Details finden Sie im folgenden Code-Link: atc.lua
-
Kong verwendet Rust, um eine brandneue Routing-Engine zu implementieren, die DSL verwendet, um die Ausdrucksfähigkeit der Routing-Ebene zu erhöhen. Beim Empfangen und Senden von HTTP-Anfragen können Sie Ausdrücke wie diesen schreiben:
net.protocol == "https" && (http.method == "GET" || http.method == "POST")
In Szenarien, in denen die angeforderte Route einem bestimmten Host entspricht, kann der folgende Ausdruck geschrieben werden:
(http.host == "example.com" && http.headers.x_example_version == "v2" ) || (http.host == "store.example.com" && http.headers.x_store_version == "v1")
Wir können Apache APISIX zum Vergleich heranziehen. Apache APISIX implementierte eine ähnliche Routing-Ausdrucksfunktion im August 2019 mit Lua-resty-radixtree. APISIX-Ausdrücke unterstützen beliebige NGINX-Variablen und haben reichhaltigere Operatoren. Neben gängigen numerischen und Zeichenfolgenvergleichen werden auch reguläre Ausdrücke, Arrays und IP-Zielgruppen unterstützt.
Die meisten dieser acht Highlights in der Kong Gateway 3.0-Version sind auf die Enterprise-Version ausgerichtet. Die folgenden beiden Abbildungen können den technologischen Entwicklungstrend von Kong anschaulicher darstellen.
Die in Kong Gateway 3.0 veröffentlichten Funktionen konzentrieren sich auf Regierungen, die Finanzbranche und große Unternehmen, die sich mehr um Sicherheitscompliance kümmern.
Analyse der acht Highlights von Apache APISIX 3.0
Das Open-Source-API-Gateway Apache APISIX veröffentlichte eine Vorschau der Version 3.0, die zehn Highlights der 3.0-Version von Apache APISIX umfasst. Der Autor wählte die wichtigsten acht Punkte für die Analyse aus. Diese acht Highlights beziehen sich alle auf Open-Source-Versionen und konzentrieren sich auf Ökosystem- und technologische Verbesserungen.
Highlights | Typ | Zielgruppe | Verbesserung | Unterstützt Kong |
---|---|---|---|---|
Vollständige Unterstützung von ARM64 | Ökosystem | Unternehmen, die in großem Umfang in die Cloud migrieren | Reduzierung der Serverkosten | Ja, teilweise |
gRPC-Client | Leistung | Optimierungsanforderungen von APISIX | Optimierung | Nein |
Erweiterte Unterstützung für Service Discovery | Ökosystem, Funktion | Unternehmen, die auf Microservices angewiesen sind | Nein | |
xRPC-Framework | Ökosystem, Funktion | Internetunternehmen | Reduzierung der Serverkosten | Nein |
Beobachtbarkeit auf L4 | Funktion | Große und mittelständische Unternehmen mit komplexen Geschäftsprozessen | Verbesserung der Beobachtbarkeit | Nein |
Unterstützung für Gateway API | Ökosystem | Internetunternehmen | Bessere Verwaltung von APIs für Unternehmensnutzer | Ja |
Mehr Plugins: OpenFunction, ClickHouse, Elasticsearch, SAML, CAS | Ökosystem, Funktion | Internetunternehmen | Umgebungsvariablen für OSS, AWS Secrets Manager und HashiCorp Vault für Enterprise | Nein |
AI-Ebene | Intelligenz | Internetunternehmen | Leistungsprobleme bei einer großen Anzahl von APIs und reduzierte Serverkosten | Nein |
Eine weitere Information, die wir aus der obigen Tabelle entnehmen können, ist, dass Apache APISIX sich in Bezug auf Ökosystem und Funktionalität verbessert. Unter diesen Highlights gibt es zwei Hauptpunkte:
-
AI-Ebene: Neben der Datenebene und der Steuerungsebene fügt Apache APISIX in der Version 3.0 eine AI-Ebene hinzu, die Anwendungs- und Betriebsentwickler durch die Analyse von API-Datenverkehr und Konfigurationen von Nutzungs- und Betriebsdruck entlastet. Zum Beispiel können die folgenden beiden Szenarien automatisch durch die AI-Ebene optimiert werden:
- Erkennung von APIs ohne Authentifizierung und Versand von Risikowarnungen an Manager.
- Beschleunigung der Verarbeitung durch Überspringen unnötiger Phasen für APIs, die nur mit Plugins in der Zugriffsphase konfiguriert sind, wie z.B. Identitätsauthentifizierung.
Die AI-Ebene bringt neue Möglichkeiten für die Datenverarbeitung. In Zukunft können automatische Aufwärmphasen für Upstream-Dienste und Sicherheitsbedrohungserkennung durch die AI-Ebene verarbeitet werden.
-
Vollständige Unterstützung für ARM64: ARM64 ist zu einer sehr verbreiteten Serverarchitektur für Cloud-Anbieter geworden. Verschiedene Cloud-Anbieter haben begonnen, Server auf Basis der Arm-Architektur wie AWS Graviton und GCP Tau T2A einzuführen. Apache APISIX hat einen umfassenden CI-Regressionstest auf ARM64 durchgeführt, um sicherzustellen, dass Benutzer Apache APISIX unter der Arm-Architektur reibungslos ausführen können. Benutzer legen großen Wert darauf. Der Leistungsvergleich der ARM-Architektur mit GCP und AWS hat auf Hacker News fast 100 Kommentare erhalten.
Fazit
Kong Gateway 3.0 hat neue Fortschritte in Bezug auf Compliance, Benutzerfreundlichkeit, Funktionen und Leistung gemacht und konzentriert sich mehr auf die Sicherheitscompliance von Unternehmen. Alle Funktionen, die von Apache APISIX 3.0 eingeführt wurden, sind Open-Source und legen mehr Wert auf Ökosystem und neue Technologieerkundungen.
Lassen Sie uns abwarten, wie Kong und Apache APISIX in Zukunft iterieren und sich entwickeln werden!