ADC

gRPC

gRPC in einer NetScaler-Appliance ist ein leichtes, leistungsstarkes und universelles Open-Source-RPC-Framework (Remote Procedure Call). Das Framework ist optimal, um in mehreren Sprachen zu arbeiten, die auf jedem Betriebssystem ausgeführt werden. Auch im Vergleich zu anderen Protokollen bietet gRPC eine bessere Leistung und Sicherheit.

gRPC für NetScaler wird aus den folgenden Gründen bevorzugt:

  • Entwickeln Sie verteilte Anwendungen für Rechenzentren und öffentliche/private Cloud-Infrastrukturen.
  • Stellen Sie die Kommunikation zwischen Client und Server für Mobilgeräte, das Internet oder die Cloud bereit.
  • Greifen Sie auf Cloud-Dienste und Anwendungen zu
  • Microservice-Bereitstellungen

Warum gRPC in NetScaler

gRPC in NetScaler wird über HTTP/2 implementiert, um leistungsstarke und skalierbare APIs zu unterstützen. Die Verwendung von Binär statt Text sorgt dafür, dass die Payload kompakt und effizient bleibt. In NetScaler werden die HTTP/2-Anfragen über eine einzige TCP-Verbindung gemultiplext, sodass mehrere Nachrichten gleichzeitig übertragen werden können, ohne die Auslastung der Netzwerkressourcen zu beeinträchtigen. Es verwendet auch Header-Komprimierung, um die Größe von Anfragen und Antworten zu reduzieren.

gRPC unterstützt die folgenden Arten von Servicemethoden, mit denen ein Client Parameter und Rückgabetypen aus der Ferne aufrufen kann.

  1. Unärer RPC. Der Client sendet eine einzelne Anfrage an den gRPC-Server und erhält eine einzige Antwort zurück.

    Beispiel: rpc SayHello(HelloRequest) returns (HelloResponse);

  2. RPC-Streaming-Server. Der Client sendet eine einzelne Anfrage an den gRPC-Server und erhält eine Stream-Antwort.

    Beispiel: rpc StreamingResponse(HelloRequest) returns (HelloResponse);

  3. Client-Streaming-RPC. Der Client sendet eine Folge von Nachrichten und wartet darauf, dass der Server seine Antwort liest und zurückgibt.

    Beispiel: rpc IntroduceYourself(stream HelloRequest) returns (HelloResponse)

  4. Bidirektionales Streaming-RPC. Sowohl der Client als auch der Server von beiden Seiten senden einen Nachrichtenstrom mithilfe des Lese-Schreib-Streams. Die beiden Streams funktionieren unabhängig voneinander.

    Beispiel: rpc ChatSession (stream HelloRequest) returns (stream HelloResponse)

NetScaler unterstützt die folgenden Funktionen für seine Dienste mit gRPC-Endpunkten:

  • Lastausgleich
  • Content Switching
  • Sichere Endpunktdienste wie Web Application Firewall, Authentifizierung.
  • Richtlinienkonfiguration
  • Statistiken und Protokollierung
  • Umschreiben von Inhalten, Filtern von Inhalten
  • Layer-4- und Layer-7-Optimierungen, TLS-Angebot
  • Gateway-Lösungen für Protokollübersetzungen
gRPC