Echtzeit-Kommunikation mit GraphQL I/O

Seite 6: Fazit

Inhaltsverzeichnis

GraphQL und GraphQL I/O sind Umsetzungen, die ständig variierende Data Access Pattern unterstützt, sich jederzeit erweitern lässt und eine stets adäquate Datenkommunikation sicherstellt. Gleichzeitig kommuniziert es Datenänderungen über alle Kanäle und Clients hinweg in Echtzeit, ohne Entwickler und Architekten mit Komplexität bei der Implementierung zu überfordern. Einer Omnichannel-Echtzeit-Strategie steht somit nichts mehr im Weg.

Das heißt aber nicht, dass GraphQL für alles reicht. Authentifizierung und Autorisierung sind etwa explizit über ein eigenes REST-Backend gelöst. BLOBs, wie sie im Rahmen von Dokumentdatenbanken oder beim Streaming vorkommen, sollten nicht per GraphQL übertragen werden. Denn sie würden mit Base64 enkodiert in die JSON-Struktur verpackt und dadurch gut 30 Prozent an Umfang gewinnen. Auch GraphQL zur Introspektion des Schemas hat einen eigenen REST-Endpunkt.

Mark Lubkowitz
ist Software Engineer und Journalist bei msg. Seine Hauptthemen sind Web Technologies und Digitale Transformation.

  • GraphQL Die Abfragesprache GraphQL wurde von Facebook entwickelt und wird mittlerweile auch von Github eingesetzt.
  • GraphQL I/O GraphQL I/O implementiert einerseits GraphQL auf Client- und Server-Seite, andererseits fügt es Echtzeit-Kommunikation hinzu.
  • Representational State Transfer: Ausgangsbasis für REST ist die Dissertation Roy Fieldings.
  • Units and Persons: Ein Implementierungsbeispiel, unter anderem für GraphQL I/O, bietet das quelleoffene Units and Persons.

(bbo)