Keine Ahnung, welches Hosting-Paket zu dir passt? Zum Webhosting-Berater

GraphQL vs. REST API - was sind die Vorteile

Autor: Hosttest Redaktion   |09.04.2021

GraphQL vs. Rest APIDamit Anwendungen im Web mit anderen lokalen oder entfernten Programmen Informationen und Daten austauschen können, verwenden sie ein Application Programming Interface (API). Dabei handelt es sich um auf einer Seite implementierten, universellen Schnittstelle, die die Struktur und die Art der Kommunikation definiert und auf Verbindungen von außerhalb wartet. Für das Format der Kontaktaufnahme und Datenübermittlung existieren neben eigenen und proprietären Lösungen ebenfalls allgemeine Normen, die das Ziel haben, einen einheitlichen Standard unabhängig von einer speziellen Anwendung zu definieren. Zwei der populärsten und am weitesten verbreiteten Ansätze sind GraphQL und Representional State Transfer (REST).

 

Was verbirgt sich hinter REST und GraphQL?

Sowohl GraphQL wie auch REST dienen dazu, eine Grundstruktur für eine allgemein verständliche und einsetzbare API vorzugeben. Es handelt sich allerdings lediglich mit Einschränkungen um eine konkrete Schnittstelle mit einer festen und genormten Struktur sowie Befehlen, sondern prinzipiell zunächst einmal um zwei unterschiedliche Konzepte oder Architekturen, die jeweils eigene Vorteile und Nachteile aufweisen. Speziell REST verzichtet bewusst darauf, eine einheitliche und universelle Schnittstelle festzulegen, sondern beschreibt primär ein Verfahren für die Kommunikation zwischen Programmen oder Maschinen (Machine-to-Machine oder M2M).

Im Unterschied dazu umfasst GraphQL eine Kombination aus einer SQL-ähnlichen Abfragesprache, einer passenden Laufzeitumgebung für unterschiedliche Programmiersprachen und einem Typsystem für die Beschreibung der API.

Was sind die Merkmale und Vorteile von REST?

Die Entwicklung und der Name von REST gehen auf die Dissertation des US-amerikanischen Informatikers Roy Thomas Fieldings zurück, der unter anderem eine entscheidende Rolle bei der Spezifikation von HTTP als Übertragungsprotokoll für Daten spielte. In seiner Arbeit entwickelt er REST als eine Reihe von Vorgaben, die für eine Kommunikation etwa als API einzuhalten sind. Darunter befinden sich etwa:

  • Adressierbarkeit jeder Ressource durch eine weltweit einmalige Adresse in Form einer URL
  • Vereinheitlichung der Schnittstelle etwa durch die POST und GET Methode bei HTTP
  • Einfache und eindeutige Struktur mit Server und Clients, die die Verbindungen aufbauen
  • Nachrichten enthalten alle für das Verständnis notwendigen Daten (Zustandslosigkeit)
  • Darstellung von Ressourcen in unterschiedlichen Sprachen wie HTML, JSON oder XML
  • Bereitstellung durch einfache URLs durch den Server ohne weitere Informationen

Aus diesem Ansatz ergeben sich zahlreiche Vorteile, während die Nachteile überschaubar bleiben. Die Vorteile umfassen unter anderem:

  • Webserver wie NGINX oder Apache als Schnittstelle zur API
  • Verwendung von selten geblockten Ports für die Kommunikation
  • Eindeutige und einfache Identifizierung der API
  • Verwendung von HTTP Methoden wie POST und GET für die Kommunikation
  • Unabhängig von Plattform, Betriebssystem und Software
  • Unterstützung für mobile Clients und Desktops
  • Ausgezeichnete Skalierbarkeit und Performance

Welche Eigenschaften zeichnen GraphQL aus?

Hinter GraphQL steht Facebook, das 2012 die Norm für eine effiziente API zunächst für den internen Gebrauch entwickelte und diese seit 2015 für den allgemeinen Gebrauch als Open Source veröffentlichte. Es handelt sich um eine Kombination aus einer Laufzeitumgebung mit Bibliotheken für wichtige Programmiersprachen wie Java, JavaScript, PHP, Python oder Ruby und einer Datenbank mit einer SQL-ähnlichen Syntax. Eine Abfrage der Validität von Anfragen ist über das Typsystem möglich, das aufgrund seiner individuellen Struktur und spezieller Einträge einen Nutzer identifizieren und authentifizieren kann. Die Vorteile von GraphQL bestehen aus:

  • Leichte Integration in eigenen Code durch Bibliotheken
  • Kompatibilität mit unterschiedlichen Programmiersprachen und Frameworks
  • Vollständige Laufzeitumgebung in Open Source verfügbar
  • Direkt Austausch von Informationen im Format einer Datenbank
  • Flexible Anpassung der API problemlos möglich
  • Unabhängig von einem Webserver oder anderer IT-Infrastruktur

Fazit: Welche API eignet sich für ein bestimmtes Projekt?

Beide Varianten weisen spezifische Vorteile auf, besitzen aber aufgrund ihrer Flexibilität und ihrer Möglichkeiten zur Individualisierung lediglich wenige Nachteile. Für welches Verfahren sich Programmierer entscheiden, hängt oft von der persönlichen Präferenz und weniger von konkreten Einschränkungen ab. Eine Ausnahme bilden Stand-Alone-Applikationen, die ihre API ausschließlich lokal nutzen: Hier zeigt GraphSQL gewisse Vorteile, falls auf den Betrieb weiterer Software wie einem Webserver verzichtet werden soll.

Foto: Markus Winkler von Pixabay

Schreibe einen Kommentar



Weitere Webhoster


Weitere interessante Artikel

PHP oder JavaScript - wer ist besser

PHP oder JavaScript. Beide Sprachen unterscheiden sich in vieler Hinsicht voneinander. Wir zeigen Gemeinsamkeiten und Un...

Offene IT-Stellen
Teilzeit-Systemad...
VCServer Network OHG
Linux Systemadmin...
dogado GmbH
Inhouse techn. Ku...
dogado GmbH
IT-Systemadminist...
IP-Projects GmbH & Co. KG
Aktuelle Ausschreibungen
Webhosting mit ve...
noch 9 Tage und 1 Stunden
Root Server und K...
Vor kurzem Beendet
6 Domains migrier...
Vor kurzem Beendet
Gesucht wird prei...
Vor kurzem Beendet
Neueste Bewertungen
Frank hat Speedbone / prosite.de bewertet
Dr. P. R. hat STRATO AG bewertet
Andreas hat Serverprofis GmbH bewertet
Peter B. hat lima-city bewertet
Dinara hat SiteGround bewertet
Markus T. hat lima-city bewertet
Rijad N. hat Bitpalast® bewertet
lenny hat netcup bewertet
Andrew N. C. hat DomainFactory bewertet
Siegbert T. hat Hostinger bewertet
Erik R. hat dogado GmbH bewertet
Barbara hat Pixel X e.K. bewertet
Ralf E. hat ServMedia.de bewertet
Daniel M. hat IP-Projects GmbH & Co. KG bewertet
Olaf P. hat ispOne business GmbH bewertet
A. S. hat Alfahosting GmbH bewertet
Heike H. hat Speedbone / prosite.de bewertet
Gert G. hat Alfahosting GmbH bewertet
W. hat Alfahosting GmbH bewertet
Florian B. hat noez.de (noez GmbH) bewertet

Wir konnten bereits Hunderttausenden Webmastern helfen den passenden Hosting-Anbieter zu finden.
Über hosttest

Im Jahr 2006 riefen wir hosttest ins Leben, um den Webhosting Markt im DACH-Raum transparenter zu machen. Mit derzeit über 400 Webhostern und über 10.000 Angeboten bieten wir dir die beste Grundlage, den für dich passenden Anbieter für Hosting-Leistungen zu finden.

Seit 2015 küren wir zudem alljährlich unsere Webhoster des Jahres und würden uns in Zukunft auch über deine Stimme freuen.
Mehr über uns...