Wie Airwallex globale Zahlungen mit Apache APISIX ermöglicht?
Yang Li
November 3, 2021
Überblick
Herausforderungen
- Eine bedeutende Herausforderung in der Datenverwaltung, da sich das Geschäft von Airwallex weltweit ausdehnt
- Komplizierte Verwaltung verschiedener Systeme und deren Vernetzung verursachen Probleme in anderen Systemen, wenn ein Problem auftritt
Ergebnisse
- Stabile Leistung für eine 15-monatige Produktionsumgebung
- 99 % der Antwortverzögerungen liegen innerhalb von 23 ms, wenn dynamisches Routing, Multi-Tenant-Rate-Limiting, Multi-Tenant-IP-Whitelist, Authentifizierung und Autorisierung aktiviert sind
- Sichere und effiziente Unterstützung der Datenhoheit, die mehr als 50 Währungen in über 130 Ländern und Regionen abdeckt
Über Airwallex
Als globales Fintech-Unternehmen hat Airwallex eine globale Finanzplattform aufgebaut, deren Zahlungsnetzwerk mehr als 50 Währungen in über 130 Ländern und Regionen weltweit abdeckt und digitale Fintech-Produkte für Unternehmen bereitstellt.
Dieser Artikel basiert auf einem Interview mit Yang Li, Ph.D., Committer von Apache APISIX und Technical Platform Lead bei Airwallex, der für die Weiterentwicklung der Technologieplattform von Airwallex verantwortlich ist.
Datenhoheit stellt Airwallex vor Herausforderungen
Data sovereignty wird in der Datenverwaltung im Cyberspace immer wichtiger. Airwallex bedient Nutzer in verschiedenen Regionen, was zwangsläufig das Problem der Datenhoheit mit sich bringt.
Früher, ohne die Anforderung der Datenhoheit, konnten Daten in Europa gespeichert und nach Asien oder in jedes Rechenzentrum der Welt synchronisiert werden. Das Dateninteraktionsdiagramm sah so aus:
In einem Zeitalter, in dem die Datenhoheit geschätzt wird, sind Daten jedoch kontrolliert, und die vorherige Architektur kann nicht mehr verwendet werden. In Europa können nur europäische Daten verarbeitet werden, und in Asien können nur asiatische Daten verarbeitet werden. Die Dateninteraktion ändert sich wie folgt.
Infolgedessen stellt die Datenhoheit eine erhebliche Herausforderung für das globale Geschäft von Airwallex dar. Airwallex beabsichtigt, Daten aus Europa in andere Regionen zu migrieren, und muss sicherstellen, dass die Anforderungen von Drittländern an die Datenhoheit mit denen der EU übereinstimmen.
Warum wählt Airwallex APISIX?
Bei der Auswahl des API-Gateways verglich Airwallex hauptsächlich die wichtigsten Gateway-Produkte aus sechs Dimensionen:
-
Stabilität: Airwallex legt großen Wert auf die Sicherstellung der Stabilität des API-Gateways. Unter den Top 1000 Websites der Welt basieren 62,1 % auf NGINX, was zeigt, dass die auf NGINX basierenden Webserver den Test komplexer und vielfältiger Szenarien in der Produktionsumgebung bestanden haben. Apache APISIX basiert auf NGINX. Darüber hinaus ermöglicht das Design von Apache APISIX’s vollständig dynamischer Funktion, die Route ohne Neuladen zu ändern und die langfristige Verbindung des Clients aufrechtzuerhalten. Außerdem führte Airwallex auch Belastungstests für Apache APISIX durch, die auch dann stabil laufen, wenn die CPU-Auslastung mehr als 70 % beträgt.
-
Leistung: Jede API-Anfrage wird durch das API-Gateway geleitet. Die Reduzierung des Leistungsverlusts des Gateways kann die Gesamtantwortzeit der APIs von Airwallex erheblich verkürzen.
"Im PoC verglichen wir die wichtigsten Gateway-Produkte: Die Antwortverzögerung von Apache APISIX ist mehr als 50 % niedriger als bei anderen Gateways. Darüber hinaus ermöglicht die unabhängige Datenebene von Apache APISIX unabhängige Instanzen in den Clustern, was eine horizontale Skalierung von Natur aus unterstützt." sagte Li.
-
Skalierbarkeit: Airwallex benötigt APISIX als API-Gateway, das komplexe Authentifizierung, Berechtigungskontrolle, Service Discovery, Rate-Limiting, Downgrade, Lastenausgleich, Whitelist und dynamisches Routing unterstützt.
-
Aktive Community: Eine aktive Community ist der Schlüssel, damit das API-Gateway mit dem Tempo der technologischen Entwicklung Schritt halten kann.
Die Community von Apache APISIX war bereits aktiv, als es noch ein Apache-Inkubationsprojekt war, gemessen an der Anzahl der Mitwirkenden, der Reaktionszeit auf Issues und der Anzahl der Pull Requests. teilte Li mit.
-
Private Bereitstellung: Das API-Gateway ist die Kernkomponente der technischen Architektur von Airwallex, und das Unternehmen stellt das API-Gateway am Rand seines eigenen privaten Netzwerks bereit. Apache APISIX hat eine gute Umweltanpassungsfähigkeit und kann problemlos in verschiedenen Umgebungen, einschließlich Cloud-Computing-Plattformen, bereitgestellt werden.
-
Geschäftsfreundliche Open-Source-Lizenz: Die Apache 2.0-Lizenz ermöglicht es Airwallex, den Code von APISIX zu ändern und darauf zu kommerzialisieren, ohne sich um Vendor Lock-in sorgen zu müssen.
Intelligente Routing-Lösung von Apache APISIX
Airwallex wählt Apache APISIX für eine intelligente Routing-Lösung, und es ist das Apache APISIX-Gateway, das entscheidet, wo die Daten verarbeitet werden sollen.
Das Gateway besteht aus zwei Schichten. Die erste Schicht ist für das Routing von Anfragen verantwortlich und bestimmt, welches Rechenzentrum die Anfrage erreichen soll. Die zweite Schicht übernimmt die Weiterleitung des Datenverkehrs.
Darüber hinaus implementierte Airwallex die Hauptfunktionen als benutzerdefinierte Plugins, um jederzeit auf eine neue Version von Apache APISIX zu aktualisieren. Auf diese Weise gibt es keinen Wettlauf zwischen der Code-Bibliothek von Airwallex und dem Kerncode des Haupt-Repositorys von Apache APISIX. Manchmal ist es jedoch notwendig, den Kerncode zu ändern. In diesem Fall versucht Li, diese Funktionen in der Open-Source-Community zu implementieren. Die Mitwirkenden in der Community sind sehr enthusiastisch, wenn es um die Diskussion der Funktionsimplementierung geht, und in den meisten Fällen können sie schnell verfügbare Lösungen bereitstellen.
Wie profitiert Airwallex von der Nutzung von APISIX?
Unten ist ein Diagramm, das die Integration von Airwallex mit APISIX zeigt.
Airwallex verwendet Apache APISIX als Kernkomponente des Microservice-Gateway-Modells. Es wird am Rand des Netzwerks bereitgestellt und bietet eine allgemeine Gateway-Funktion für den gesamten Datenverkehr, der in Airwallex eingeht. Die Probleme, die es löst, sind:
-
Datenhoheit: Für Finanzinfrastrukturen, die grenzüberschreitend operieren, ist die Datenhoheit eine kritische regulatorische Anforderung. Zu diesem Zweck entwickelte Airwallex ein dynamisches, regelkonformes Routing-Plugin, das die Fähigkeiten der dynamischen Upstream-Auswahl von Apache APISIX nutzt. Dynamisches Routing kann intelligente Upstreams für die Anfrageverteilung basierend auf den Merkmalen der Benutzeranfragen auswählen, wodurch komplexe Multi-Rechenzentrums-Kollaborationsprobleme von der Service-Ebene auf die Gateway-Ebene abstrahiert werden. Das Wesen des dynamischen Routings besteht darin, zwei Fragen zu beantworten: Wie werden Upstreams gruppiert und wie werden Anfragen und Gruppen abgeglichen.
-
Isolation in Microservices: Airwallex hofft, dass die Engineering-Teams jedes Microservices ihre eigenen Dienste unabhängig kontrollieren können, um die Kosten für Kommunikation und Koordination effektiv zu reduzieren und die Engineering-Effizienz zu verbessern. Dieses Architekturkonzept erfordert, dass Infrastrukturkomponenten, die von verschiedenen Teams gemeinsam genutzt werden, wie z. B. das API-Gateway, die Mandantenisolation unterstützen können. APISIX eignet sich perfekt, um die Mandantenisolation zu erfüllen. Während die Robustheit und Kostenkontrolle des gesamten Systems sichergestellt wird, ermöglicht APISIX den Geschäftsteams, Gateway-Funktionen gemäß ihren eigenen Anforderungen zu konfigurieren und zu erweitern, wodurch die Unabhängigkeit der Microservice-Teams und Dienste gewahrt bleibt.
-
Multi-Tenant-Rate-Limiting: In einer Multi-Tenant-Umgebung sind die Verkehrsmerkmale jedes Mandanten unterschiedlich. Die Anwendung desselben Rate-Limiting auf verschiedene Mandanten kann die kommerziellen Anforderungen nicht erfüllen. Multi-Tenant-Rate-Limiting kann basierend auf Benutzermerkmalen angemessener sein.
-
Multi-Tenant-IP-Whitelist: Die Zugriffs-IP jedes Mandanten variiert in einer Multi-Tenant-Umgebung. Multi-Tenant-IP-Whitelist ermöglicht es jedem Mandanten, seine eigene Whitelist zu kontrollieren, ohne sich Sorgen über die Invasion anderer Benutzer in seine eigenen Ressourcen machen zu müssen.
-
Authentifizierung: Häufige Schlüsselaktualisierungen sind ein kritischer Schritt, um die Sicherheit der Benutzerressourcen zu gewährleisten. APISIX unterstützt nicht nur die Authentifizierung von Anfragen, sondern auch die dynamische Aktualisierung von Schlüsseln.
-
Autorisierung: Die Berechtigungsverwaltung von Unternehmensanwendungen ist sehr komplex, und verschiedene Anwendungsszenarien haben völlig unterschiedliche Berechtigungsverwaltungsmodelle. APISIX kann überprüfen, ob der anfragende Benutzer über ausreichende Berechtigungen verfügt, um auf die Schnittstelle zuzugreifen, und illegalen Datenverkehr beim ersten Mal abfangen.
Die Produktionsumgebung von Airwallex läuft seit 15 Monaten, und die Gesamtleistung ist äußerst stabil. Etwa 99 % der Antwortverzögerungen liegen innerhalb von 23 ms, wenn dynamisches Routing, Multi-Tenant-Rate-Limiting, Multi-Tenant-IP-Whitelist, Authentifizierung, Autorisierung und andere Funktionen aktiviert sind.
Dank des hervorragenden Plugin-Mechanismus von Apache APISIX kann Airwallex private Plugins hinzufügen, die den Geschäftsanforderungen entsprechen, ohne den Kerncode zu ändern. Das vollständige Testsystem gewährleistet weiterhin die Softwarequalität, und Sie können sicher die personalisierten Anforderungen des Plugins erhöhen, während sichergestellt wird, dass die ursprüngliche Kernlogik nicht beschädigt wird.
Zukünftige Pläne
Die weiteren Pläne von Airwallex umfassen hauptsächlich drei Aspekte:
-
Verwenden eines mehrschichtigen Netzwerks, um die Gateway-Logik in verschiedene Schichten aufzuteilen, z. B. die Verteilung des Datenverkehrs nach Datenhoheit oder anderen Gateway-Logiken.
-
Einfach zu lesendes und einfach zu verwendendes Routing-Management ist entscheidend für den Erfolg des API-Gateways. Das Routing-Management muss für die Entwickler freundlich sein, damit sie leicht verstehen können, was das Gateway für sie tun kann und wie sie es konfigurieren und veröffentlichen können.
-
Verwenden von farbcodierten Anfragen, um die Produktionsumgebungstests zu implementieren. Die Verwendung von farbcodierten Anfragen des API-Gateways zur Implementierung von Produktionsumgebungstests kann mehr Flexibilität und Benutzerfreundlichkeit bieten.
Benötigen Sie Unterstützung für APISIX?
Apache APISIX ist ein Open-Source-, dynamisches, skalierbares und leistungsstarkes Cloud-natives API-Gateway für alle Ihre APIs und Microservices. Als Spende an die Apache Software Foundation von API7.ai ist APISIX zu einem Top-Level-Open-Source-Apache-Projekt herangewachsen.
Möchten Sie Ihre Entwicklung wie Airwallex mit Zuversicht beschleunigen? Um die APISIX-Unterstützung zu maximieren, benötigen Sie API7. Wir bieten umfassende Unterstützung für APISIX und API-Management-Lösungen basierend auf Ihren Anforderungen!
Kontaktieren Sie uns jetzt: https://api7.ai/contact.
Mehr über den Interviewpartner: