Application oder APIs liegen voll im Trend.
APIs sind zwar nichts Neues, doch aktuelle Phänomene wie die beschleunigte digitale Transformation während COVID-19, verbesserte Softwareintegrationen und Bemühungen, ältere Apps auf die Cloud umzustellen, haben zu einer kontinuierlichen API-Ausbreitung geführt – mit Auswirkungen auf Management, Sicherheit und sogar Architekturentscheidungen, die Unternehmen treffen, um in der modernen digitalen Wirtschaft erfolgreich zu sein.
APIs können im Wesentlichen den Aufstieg der Maschinen darstellen. Doch glücklicherweise haben die Menschen (zumindest im Moment) immer noch die Kontrolle über deren Bau, Verwaltung und Sicherheit.
Grundsätzlich gilt, dass der Verbraucher , sozusagen in der „API-Sprache“, im Allgemeinen Abfragen oder Anforderungen an den Hersteller sendet, und zwar über einheitliche Schnittstellen, die aus verschiedenen Standards, Schemata und Spezifikationen bestehen.
Beispielsweise enthält der National Weather Service (der Hersteller ) tägliche Wetterdaten. Die Wetter-App auf Ihrem Telefon (der Verbraucher ) ruft dieses System über die WeatherKit REST API auf bzw. fragt es ab und gibt die Daten dann über die Benutzeroberfläche der Wetter-App wieder. Dies ist zwar nur ein einfaches Beispiel für eine beliebte, von Millionen von Benutzern verwendete App, es ist jedoch bemerkenswert, dass die Maschine-zu-Maschine-Kommunikation den Löwenanteil des Datenverkehrs bei modernen digitalen Erlebnissen ausmacht und über APIs ermöglicht wird.
APIs bieten eine Reihe von Technologievorteilen, die sich in einem geschäftlichen Mehrwert niederschlagen:
Technologievorteile | Geschäftswert |
---|---|
Abstrahieren Sie die zugrunde liegende Implementierung einer Web-App. | Organisationen können schnell mobile Apps und auf Microservices basierende Architekturen bereitstellen. |
Geben Sie Typen an, damit Entwickler API-Verbraucher mithilfe von Tools implementieren können. | Führungskräfte können Entwicklungsprozesse optimieren, um die Markteinführungszeit zu verkürzen. |
Definieren Sie Semantik/Verhalten, um einen konsistenten und vorhersehbaren Informationsaustausch zu modellieren. | Partner können Integrationen von Drittanbietern entwickeln und monetarisieren. |
Bei der Implementierung von APIs müssen verschiedene Aspekte berücksichtigt werden. Insbesondere im Hinblick auf Modellierung, Versionierung und Vertragstests, die dabei helfen, Abhängigkeiten aufzulösen und die Interoperabilität während Entwurf, Konstruktion und Wartung sicherzustellen.
Rücksichtnahme | Beschreibung | Nutzen |
---|---|---|
Modellieren | Die Semantik oder das Verhalten zur Darstellung und Strukturierung des Informationsaustauschs. | Optimierte Verwaltung verteilter Architekturen. |
Versionierung | Governance-Strategien für Release und Wartung während des gesamten API-Lebenszyklus. | Maximale Benutzerfreundlichkeit und Abwärtskompatibilität. |
Vertragsprüfung | Definierte Interaktion und erwartete Reaktionen zwischen Verbraucher und Hersteller. | Deterministische Interaktionen mit Geschäftsintegrationen von Drittanbietern. |
Es gibt keinen richtigen oder falschen Weg, eine API zu erstellen, zu verwalten und zu sichern. Tatsächlich wurde es mit der zunehmenden Verbreitung von APIs notwendig, ihre Form und Struktur zu standardisieren, um sie in großem Maßstab nutzen zu können. Geben Sie die OpenAPI -Initiative und die daraus resultierende OpenAPI-Spezifikation (OAS) ein. Swagger war die ursprüngliche Referenzimplementierung der OpenAPI-Spezifikation, und die meisten Tools sind mittlerweile auf die Verwendung von OpenAPI ausgerichtet, das immer noch seinen Swagger beibehält (HA!).
Tatsächlich kann eine API unter Verwendung einer Vielzahl von Standards, Schemata und Spezifikationen erstellt werden. Beispielsweise eine RESTful- Präsentation, ein gRPC -Dienst und Verbindungen in ein GraphQL- Schema.
Durchführung | Überblick | Vorteile | Wann zu verwenden |
---|---|---|---|
![]() |
REST ist die mit Abstand am weitesten verbreitete Implementierung API-basierter Architekturen. |
|
|
![]() |
GraphQL ist eine Open-Source-Datenabfrage- und -bearbeitungssprache für APIs und eine Laufzeitumgebung zum Ausführen dieser Abfragen mit vorhandenen Daten (entwickelt von Facebook und jetzt Teil der Linux Foundation). |
|
|
![]() |
gRPC ist ein modernes, quelloffenes und leistungsstarkes Remote Procedure Call (RPC)-Framework unter der Leitung der Linux Foundation. |
|
|
Nach dieser Einführung in die API-Grundlagen werden wir in den folgenden Beiträgen untersuchen, wie man eine API-Architektur erstellt, verwaltet und sichert, bevor wir alles zusammenfügen, indem wir eine Legacy-App für die Cloud auf eine neue Plattform umstellen.
Möchten Sie weiterkommen? Laden Sie das eBook noch heute herunter: