Wie berechnet man die Kosten für die Bereitstellung eines Open-Source API Gateways auf AWS?

March 11, 2024

Technology

Wahl zwischen Open-Source-API-Gateway und Amazon API Gateway

Wenn Entwickler vor der Entscheidung stehen, ob sie einen vollständig verwalteten Dienst wie Amazon API Gateway oder eine Open-Source-API-Gateway-Lösung verwenden sollen, spielen mehrere entscheidende Faktoren eine Rolle. Dieser Artikel untersucht diese Überlegungen, um Ingenieuren bei der fundierten Entscheidungsfindung zu helfen.

  • Multi-Cloud- und Hybrid-Umgebungen: Amazon API Gateway glänzt bei der Integration mit anderen AWS-Diensten wie Lambda, ist jedoch eng mit dem AWS-Ökosystem verbunden. Open-Source-Gateways bieten hingegen mehr Flexibilität und ermöglichen die Bereitstellung in GCP, Azure, privaten Clouds oder hybriden Umgebungen.

  • Umfangreiche Anpassungsbedürfnisse: Für Projekte, die hochgradig angepasste API-Funktionen benötigen, die über den Rahmen von Amazon API Gateway hinausgehen, bieten Open-Source-Lösungen mehr Kontrolle und die Möglichkeit, Gateways an spezifische Anforderungen anzupassen.

  • Hohes API-Anfragevolumen und Kosten: Mit steigendem API-Verkehr können die Kosten für Amazon API Gateway erheblich werden. Open-Source-Gateways sind hingegen oft eine kostengünstigere Option, insbesondere bei hohem Verkehrsaufkommen.

  • Optimierung von Leistung und Latenz: Open-Source-Optionen bieten mehr Kontrolle über Leistung und Latenz. Ingenieure können direkt Benchmarking durchführen und optimierte Open-Source-Gateways (z.B. Apache APISIX, Kong, Envoy, Tyk) auswählen, die ihren Anwendungen entsprechen.

Während Amazon API Gateway eine bequeme und gut integrierte Lösung innerhalb des AWS-Ökosystems bietet, bieten Open-Source-Alternativen mehr Flexibilität, Anpassungsmöglichkeiten und niedrigere Kosten, was sie besonders für komplexe oder hochfrequente Anwendungsfälle geeignet macht.

Faktoren zur Kostenberechnung

API-Gateways spielen eine entscheidende Rolle bei der Verwaltung des Datenverkehrs zwischen Client-Anwendungen und Backend-Diensten und fungieren als Middleware mit zwei Hauptkomponenten: der Datenebene und der Steuerungsebene.

Datenebene: Skalierung mit dem Verkehr

Die Datenebene, die für die Verarbeitung eingehender API-Anfragen verantwortlich ist, führt Aufgaben wie Routing, Authentifizierung und Datenumwandlung durch, die für einen reibungslosen Systembetrieb entscheidend sind. Mit steigendem API-Aufrufvolumen benötigt die Datenebene mehr Rechenressourcen, um eine optimale Leistung aufrechtzuerhalten. Daher ist eine genaue Schätzung des API-Aufrufvolumens entscheidend, um die Anzahl der benötigten Datenebeneninstanzen zu bestimmen und sicherzustellen, dass das System Anfragen effektiv verarbeiten und eine hohe Verfügbarkeit gewährleisten kann.

Steuerungsebene: Planung für hohe Verfügbarkeit

Die Steuerungsebene fungiert als zentraler Knotenpunkt des API-Gateways, verwaltet Konfigurationen und Richtlinien und leitet an, wie die Datenebene Anfragen verarbeitet. Im Gegensatz zur Datenebene hängen die Ressourcenanforderungen der Steuerungsebene nicht direkt mit dem API-Aufrufvolumen zusammen. Es ist jedoch entscheidend, die hohe Verfügbarkeit der Steuerungsebene sicherzustellen. Daher müssen Benutzer die Ressourcenzuweisung der Steuerungsebene basierend auf den gewünschten Redundanzstufen und Verfügbarkeitsanforderungen planen.

Überwachungs- und Protokollierungskosten

  • Amazon API Gateway: Integriert mit AWS CloudWatch, bietet Überwachungs- und Protokollierungsfunktionen, die zusätzliche Kosten verursachen. Bei der Betrachtung der Gesamtkosten von Amazon API Gateway ist es wichtig, die Anforderungen an Überwachung und Protokollierung zu bewerten.

  • Open-Source-API-Gateway: Überwachungs- und Protokollierungslösungen müssen in der Regel separat berücksichtigt werden. Kostengünstige Optionen wie Prometheus und Grafana können in Betracht gezogen werden, oder Benutzer können sich für verwaltete Protokollverwaltungsdienste von Cloud-Anbietern entscheiden.

Kostenberechnungsbeispiel: Schätzung der Kosten für die Verarbeitung von 10 Milliarden API-Anfragen

Verwendung von Amazon API Gateway

Lassen Sie uns die monatlichen Kosten für die Verarbeitung von 10 Milliarden API-Anfragen mit Amazon API Gateway schätzen. Bitte beachten Sie, dass die folgenden Angaben Schätzungen sind und die tatsächlichen Kosten je nach spezifischen Konfigurationen und Nutzungsmustern variieren können.

Annahmen:

  • Anzahl der API-Anfragen pro Monat: 10 Milliarden
  • Durchschnittliche Größe der Anfrage-/Antwortnutzlast: 1 KB (1.024 Bytes)

Verarbeitung von 10 Milliarden API-Anfragen mit Amazon API Gateway

In diesem Szenario betragen die monatlichen Kosten 9.030 $.

Verwendung des Open-Source-API-Gateways Apache APISIX

Unter der Annahme von 20 Tagen pro Monat und 12 Stunden Betriebszeit pro Tag berechnen wir die Anzahl der Anfragen, die das API-Gateway zur Verarbeitung dieser 10 Milliarden API-Aufrufe benötigt.

10000000000 / 20.0 / 12 / 3600 = 11574.074074074073

Die Berechnung zeigt, dass etwa 11.000 API-Anfragen pro Sekunde verarbeitet werden müssen. Wir können zwei Datenebenen verwenden, die jeweils mit 4 vCPUs konfiguriert sind.

11574.074074074073 / 4 / 2 = 1446.7592592592591

In diesem Szenario verarbeitet jede CPU etwa 1400 API-Anfragen pro Sekunde, was für ein API-Gateway wie Apache APISIX, das Zehntausende von Anfragen pro Sekunde verarbeiten kann, ein Leichtes ist.

Zusätzlich werden die gleichen Rechenressourcen für die Steuerungsebene bereitgestellt.

Verarbeitung von 10 Milliarden API-Anfragen mit APISIX

Die monatlichen Kosten betragen 195,06 $.

Durch den Vergleich der Kosten für die Verarbeitung von 10 Milliarden Anfragen zwischen Amazon API Gateway und einem Open-Source-API-Gateway ergibt sich ein Verhältnis von 9030 / 195,06 = 46,29344816979391, was bedeutet, dass die Cloud-Ressourcenkosten von Amazon API Gateway etwa 46-mal höher sind als die eines Open-Source-API-Gateways.

Die Verwendung eines Open-Source-API-Gateways eliminiert jedoch nicht die Softwarekosten. Ingenieure müssen auch die Kosten für Upgrades, Wartung sowie den Kauf von technischem Support und kommerziellen Produkten berücksichtigen.

Fazit

Durch den Vergleich von Amazon API Gateway und dem Open-Source-API-Gateway Apache APISIX anhand praktischer Beispiele stellen wir fest, dass Open-Source-API-Gateways die Softwarekosten von Unternehmen erheblich senken können. Obwohl Amazon API Gateway eine bequeme und gut integrierte Lösung innerhalb des AWS-Ökosystems bietet, übertreffen Open-Source-Alternativen in Bezug auf Flexibilität, Anpassungsfähigkeit und Kosteneffizienz, was sie besonders für komplexe oder hochfrequente Anwendungsfälle geeignet macht.

Tags: