APISIX stärkt Cloud-Service-Plattform für Regierungsbeschaffung

Jing Yan

Jing Yan

January 31, 2024

Case Study

Überblick

Über Zhengcaiyun

Gegründet vom Finanzministerium der Provinz Zhejiang in China und der Alibaba Group, spezialisiert sich Zhengcaiyun auf die Entwicklung einer modernen Cloud-Service-Plattform, die speziell für die Beschaffung der Regierung konzipiert ist. Basierend auf dem Internet nutzt die Plattform die Kraft von Cloud Computing und Big-Data-Technologie, um sich auf die Digitalisierung und Verwaltung der Regierungsbeschaffung zu konzentrieren. Die Plattform integriert Online-Beschaffungstransaktionen, Überwachungsprozesse und Dienstleistungen, wodurch die Kunden in der Lage sind, eine bequemere, effizientere und transparentere Beschaffung zu ermöglichen.

Herausforderungen

  • Die Dubbo-zu-HTTP-Tunnelung von Zhengcaiyun führte zu Herausforderungen bei der Protokoll-Datenkonvertierung, was die Leistung der internen Komponenten beeinträchtigte.

  • Die Dual-Serialisierungskomplexität in Dubbo, die JavaBeanDescriptor und Hessian2 beinhaltet, führte zu potenziellen Leistungseinbußen bei Zhengcaiyun.

  • Die Geschäftserweiterungen des Dubbo-Gateways erforderten mehr Aufwand in Entwicklung und Bereitstellung aufgrund von Ineffizienzen bei der synchronen Einzelthread-Aufrufweise in Zhengcaiyuns HttpClient-Plan.

Ergebnisse

  • Die Integration von APISIX vereinfacht die Dubbo-zu-Dubbo-Transformation von Zhengcaiyun, reduziert die Latenz und verbessert die Gesamtleistung des Systems.

  • Mit Hilfe von APISIX führt das prägnante Design und die lang anhaltenden Verbindungen von Dubbo zu deutlich höheren Tps als HTTP, was die Verbindungskosten für Zhengcaiyun minimiert.

  • Durch die Einführung eines einheitlichen Protokolls minimiert Zhengcaiyun den Overhead und ermöglicht effiziente und leichte Datenübertragungen zwischen den Komponenten.

Hintergrund

Zhengcaiyun_Platform

Die in der Provinz Zhejiang ansässige Zhengcaiyun-Plattform operiert als eigenständiges Microservices-Netzwerksystem und bietet Dienstleistungen für Zweigstellen in verschiedenen Provinzen an. Sie bietet Regierungsabteilungen eine Plattform zur Optimierung der Beschaffung und ermöglicht die private Bereitstellung durch nicht-staatliche Einrichtungen wie Banken. Um die Datenübertragung über Netzwerke hinweg zu erleichtern, startete Zhengcaiyun 2022 das "Highway"-Projekt, das Netzwerklösungen für ein einheitliches, hochgeschwindigkeitsfähiges Netzwerkerlebnis konsolidiert.

Trotz der Nutzung des Dubbo-Gateways und des HTTP-Protokolls stand Zhengcaiyun während der Implementierung des "Highway"-Projekts vor Herausforderungen, die durch APISIX gelöst werden können.

Probleme vor der Nutzung von APISIX

Vor der Einführung des APISIX-Gateways stand Zhengcaiyun vor mehreren Herausforderungen in seiner Infrastruktur, was es dazu veranlasste, nach einer effizienteren und optimierteren Lösung zu suchen.

API-Gateway

  • I/O-Modus: Aufgrund der Komplexität des Netzwerks entschied sich Zhengcaiyun für die Nutzung von HTTP als Kanal zur Datenübertragung durch den Dubbo-zu-HTTP-Tunnel, der später am Zielort entpackt wurde. Ein Nachteil dieses Tunnelansatzes war die Notwendigkeit der Protokoll-Datenkonvertierung innerhalb dieses Tunnels, insbesondere beim Erreichen des Dubbo-Gateways. Einige der von Zhengcaiyun selbst entwickelten Komponenten könnten nicht die optimale Leistung erreichen.

  • Duale Serialisierung: Bei der dualen Serialisierung handelt es sich um ein JavaBeanDescriptor-Objekt, eine API in Dubbo. Geschäftsobjekte können während der Serialisierung und Deserialisierung nicht direkt in Parametern serialisiert werden, was eine Kapselung im SDK erfordert, um JavaBeans in eine interne Dubbo-Struktur umzuwandeln. Nach dem Erreichen des Ziels wird dieser Prozess umgekehrt, um eine reibungslose Serialisierung und Deserialisierung der Geschäftsobjekte in den Parametern zu gewährleisten. Darüber hinaus gibt es eine zusätzliche Komplexitätsschicht aufgrund der Verwendung von Hessian2 für die Serialisierung durch Dubbo. Die Verwendung von Hessian2 für die duale Serialisierung könnte erhebliche Leistungseinbußen verursachen.

  • Andere Geschäftserweiterungen: Das Dubbo-Gateway erfordert bestimmte Geschäftserweiterungen, nicht nur auf dem zentralen Gateway, sondern auch auf dem lokalen Cluster-Gateway. Darüber hinaus benötigt Zhengcaiyun einige leicht bereitstellbare Funktionen, wie z.B. Ratenbegrenzung.

Protokollübertragung

  • Verschiedene HTTP-Clients können einige redundante Header-Informationen enthalten.

  • Während HTTP viele Anfragen kontinuierlich senden kann, muss es auf die Rückkehr einer Anfrage warten, bevor es mit der nächsten fortfahren kann, was zu einer geringen Parallelitätseffizienz führt.

  • Der von Zhengcaiyun verwendete HttpClient-Plan hat einen synchronen Einzelthread-Aufrufansatz übernommen, der darauf wartet, dass der Aufruf abgeschlossen ist, bevor er mit nachfolgenden Operationen fortfährt. In Szenarien mit hoher Parallelität ist dieser Ansatz sehr ineffizient. Mit dem Wachstum des Geschäftsvolumens bei Zhengcaiyun haben sich die bisher verwendeten Lösungen allmählich als unzureichend erwiesen, was eine Aktualisierung erforderlich machte.

Warum APISIX

Zhengcaiyun hat beschlossen, sein intern entwickeltes Dubbo-Gateway durch APISIX zu ersetzen und das Dubbo-Protokoll als Tunnelprotokoll anstelle des konventionellen HTTP-Protokolls zu übernehmen.

Angesichts der potenziellen Herausforderungen, die mit ihrem benutzerdefinierten Gateway verbunden sind, bevorzugten sie es, nicht zu viele Ressourcen in diesem Bereich zuzuweisen. Stattdessen planten sie, eine vorgefertigte, professionelle Lösung sofort zu integrieren, um Entwicklungsressourcen zu sparen und die Effizienz zu steigern. Die Entscheidung, APISIX zu wählen, wurde durch folgende Faktoren beeinflusst:

  • Lebendige Community, hervorragender Code: APISIX verfügt über eine aktiv engagierte Open-Source-Community, die eine hohe Codequalität gewährleistet.

  • Robuste Architektur, außergewöhnliche Leistung: Auf der leistungsstarken OpenResty entwickelt, strebt APISIX nach Leistungsexzellenz sowohl aus architektonischer als auch aus designbezogener Perspektive und erfüllt damit die grundlegenden Anforderungen von Zhengcaiyun an das Gateway.

  • Bemerkenswerte Erweiterbarkeit: APISIX zeigt eine bemerkenswerte Erweiterbarkeit, die die benutzerdefinierten Anforderungen von Zhengcaiyun erfüllt. Im Wesentlichen strebt Zhengcaiyun danach, von der hohen Leistung von NGINX zu profitieren, während es die Flexibilität behält, die Funktionalität zu erweitern.

Warum APISIX_Dubbo

Erfolge nach der Nutzung von APISIX

Reduzierter Overhead bei der Protokollübertragung

In einer Umgebung, in der verschiedene Komponenten möglicherweise mit unterschiedlichen Protokollen kommunizieren, kann der Overhead, der durch die Konvertierung von Datenformaten entsteht, erheblich sein. APISIX hat jedoch ein einheitliches Protokoll bereitgestellt, das die Konsistenz über die gesamte Kommunikationspipeline von Zhengcaiyun sicherstellt. Diese Strategie vereinfacht nicht nur den Datenaustauschprozess von Zhengcaiyun, sondern macht auch die ständige Übersetzung zwischen verschiedenen Protokollen überflüssig.

Agiles und reaktionsfähiges Kommunikationsframework

Durch die Integration von APISIX hat Zhengcaiyun eine direkte Dubbo-zu-Dubbo-Transformation etabliert. Diese Integration dient als entscheidende Optimierung, die die Latenz reduziert und die Gesamtleistung der Architektur des Unternehmens verbessert. Die direkte Dubbo-zu-Dubbo-Transformation minimiert die typischerweise in den Serialisierungsprozess involvierten Zwischenschritte und bietet ein agileres und reaktionsfähigeres Kommunikationsframework für Zhengcaiyun.

Darüber hinaus hat Zhengcaiyun durch die Beseitigung der Notwendigkeit für doppelte Serialisierungsrunden die Datenübertragungspipeline vereinfacht, potenzielle Fehlerquellen reduziert und die Zuverlässigkeit des Systems verbessert.

Verringerte Latenz und maximierte Ressourcennutzung

In einem traditionellen Setup erfordert jede Anfrage typischerweise eine separate Verbindung, was zu potenziellem Overhead und erhöhter Latenz führt. Mit der langen Verbindungsmultiplexing-Funktion in APISIX hat Zhengcaiyun jedoch diese Einschränkung überwunden. Durch die gleichzeitige Übertragung mehrerer Anfragen über eine einzige, persistente Verbindung maximiert es die Ressourcennutzung und reduziert den Zeitaufwand, der mit dem Aufbau und Abbau von Verbindungen für jede Anfrage verbunden ist.

Diese Funktion erweist sich insbesondere in Szenarien als vorteilhaft, in denen zahlreiche kleine Anfragen zwischen Komponenten innerhalb des Systems von Zhengcaiyun ausgetauscht werden. Das lange Verbindungsmultiplexing optimiert den Kommunikationsprozess, wodurch das Unternehmen in der Lage ist, mehrere Anfragen gleichzeitig effizient zu verwalten und zu verarbeiten. Das Ergebnis ist ein agileres und reaktionsfähigeres System, das erhöhte Arbeitslasten mit verbesserter Effizienz bewältigen kann.

Darüber hinaus verbessert die Verwendung von langen Verbindungen die Gesamtstabilität des Systems von Zhengcaiyun, indem der Einfluss des Verbindungsaufbaus und -abbaus minimiert wird.

Etabliertes Layer-4-Protokoll-Erweiterungsframework

APISIX hat Zhengcaiyun dabei geholfen, das xRPC Layer-4-Protokoll-Erweiterungsframework zu implementieren, wodurch die Entwickler des Unternehmers in der Lage sind, anwendungsspezifische Protokolle anzupassen. Mit dem xRPC-Framework unterstützt APISIX Proxy-Implementierungen für verschiedene große Anwendungsprotokolle. Benutzer können auch ihre privaten, TCP-basierten Anwendungsprotokolle basierend auf diesem Framework einführen, was eine Präzision ähnlich dem HTTP-Protokoll-Proxy und eine erhöhte Layer-7-Kontrolle bietet. Durch die Nutzung der xRPC-Erweiterung von APISIX hat Zhengcaiyun effektiv die Fähigkeit zur direkten Dubbo-Protokollweiterleitung eingeführt, was eine umfassende Dubbo-Protokollübertragung sicherstellt.

Zusammenfassung

Als Reaktion auf die Komplexitäten, die durch die Herausforderungen der datenübergreifenden Netzwerke entstanden sind, ergriff Zhengcaiyun proaktive Maßnahmen, indem es das innovative "Highway"-Projekt startete. Dieses strategische Unterfangen war durch die effektive Nutzung von APISIX gekennzeichnet, ein Schritt, der erhebliche Verbesserungen in der Gateway-Leistung erzielte. Über die Leistungsverbesserungen hinaus erleichterte die Integration von APISIX eine spürbare Reduzierung der Kosten, die mit der Protokollkonvertierung verbunden sind. Darüber hinaus erreichte diese Initiative erfolgreich einen optimierten und konsolidierten Ansatz auf der Middleware-Ebene, der die Datenverarbeitung und Kommunikation innerhalb der Netzwerkinfrastruktur optimiert.

Tags: