Menü
Ein Beitrag von Adacor

Wie Serverless Infrastructures mit Microservices zusammenspielen

Programmieren ohne Server? Das hört sich ein wenig an wie „Backen ohne Mehl“. Seit 2016 drängen die großen Cloud-Anbieter mit serverlosen Architekturen auf den Markt – den sogenannten „Serverless Infrastructures“. Aber wie soll das gehen? Kann man wirklich auf den Einsatz von Servern verzichten? Und welche Rolle spielendie Mikrodienste bei der serverlosen Datenverarbeitung?

Natürlich nicht. Als physikalische Einheit oder virtuelle Ressource arbeiten im Hintergrund der Anwendungen immer noch „echte“ Server. Letztlich müssen nach wie vor Daten und Codes irgendwo gespeichert und betrieben werden. Mit der Administration und Betriebssteuerung der Server haben die Nutzer serverloser Infrastrukturen allerdings nichts mehr zu tun. Diese Arbeit übernehmen die jeweiligen Cloud-Anbieter. Was bei diesen läuft, spielt sich in einer Art Black-Box ab. Entwickler können also mithilfe der serverlosen Datenverarbeitung Applikationen erstellen, ohne sich um Rahmenbedingungen wie Server-Strukturen oder Betriebssysteme Gedanken zu machen.

Microsoft wirft „Azure-Functions“ ins Rennen, „Google“ nennt sein Produkt „Cloud- Functions“, Amazon hat die Nase mit „AWS Lambda“ weit vorn, und IBM mischt im Markt der Serverlosen mit „OpenWhisk“ mit. Was sind typische Anwendungsfälle? Bei welchen Projekten machen sich die neuen serverlosen Infrastrukturen bezahlt?

Mobile Backends

Um ein Backend aufzusetzen, mussten Unternehmen bisher eine Menge Arbeit investieren: Backend-Entwickler und Administratoren mussten sich abstimmen, Server verwalten, Datenbanken integrieren und die logische Architektur entwickeln. Unterschiedliche Schnittstellen mussten definiert und mit den Frontend-Entwicklern abgeglichen werden. Ein Prozess, der Manpower und Zeit bindet, also Geld kostet und relativ langsame Reaktionszeiten auf sich stets verändernde Business-Anforderungen zur Folge hatte.

Bestandteil des Services von Anbietern der „serverless infrastructures“ ist deshalb „Backend as a Service (BaaS)“. Diese browserbasierten Entwicklungsumgebungen erleichtern die Entwicklung von Backends für mobile Apps und Webseiten – durch automatisierte Funktionen und Interaktionen.

Ein Beispiel: Auf diesem Weg können Bilder nicht nur automatisiert hochgeladen, sondern durch eine verknüpfte Funktion an die Bildgröße für eine definierte Anwendung angepasst werden.

Mikrodienste

Mikrodienste wie Microservices auch bezeichnet werden erfüllen jeweils eine kleine Aufgabe im Rahmen einer Anwendung. Die Dienste lassen sich modulhaft miteinander verbinden, sodass sich daraus eine komplexere Software ergibt. Der Vorteil dieser Verknüpfungsarchitekturen besteht darin, dass sich die einzelnen Module je nach veränderter Anforderung schnell ersetzen, erweitern oder anpassen lassen und von einem Entwicklerteam genutzt werden können.

 

Microservices sind kleinteilig und modular aufgebaut und lassen sich flexibel an Anforderungen anpassen.

Microservices sind elementare Bestandteile der serverlosen Datenverarbeitung. Sie bestehen nicht aus monolithischen Codes mit internen Abhängigkeiten, sondern aus einzelnen kleinen Diensten, die über definierte Schnittstellen miteinander interagieren. Das garantiert eine hohe Skalierbarkeit, da mehrere Teams unabhängig voneinander an ihrem jeweiligen Microservice arbeiten können.

Da die Microservices von den anderen Diensten und Prozessen isoliert fungieren, können sie im Prinzip in einer beliebigen Programmiersprache erstellt werden. Die Anbieter von serverlosen Infrastrukturen haben in ihrem Angebotsportfolio meist automatisierte APIs, die unter anderem das Erstellen von Komponenten der grafischen Benutzeroberfläche ermöglichen oder vereinfachen. Das bedeutet in der Praxis zum Beispiel, dass es schnell und einfach ist, Bilder zu verarbeiten, Videos zu transcodieren, Dateien zu validieren oder beliebige Onlinedienste aufzurufen.

Image

Datenschutz ist Chefsache

Kennen Sie schon alle Aspekte zur EU-DSGVO?
Der Bericht in der aktuellen Ausgabe unseres Magazins unterstützt Sie bei der Beantwortung dieser und weiterer brennender Fragen.

Magazin jetzt kostenlos downloaden

Webhooks und Bots

Webhooks sind nicht-standardisierte Verfahren zur Kommunikation von Servern untereinander. Sie erfassen bestimmte Ereignisse und lösen automatisch eine Reaktion auf diese aus. Bots wiederum sind Computerprogramme, die eine definierte Struktur sich ständig wiederholender Ereignisse ausführen. Die Anbieter serverloser Infrastrukturen bieten eine Reihe von Webhooks an, die automatisch das Verhalten eines Bots anpassen. Der Vorteil: Entwickler können ohne großen Aufwand Funktionen erstellen, die serviceübergreifende Prozesse auf schnelle Weise implementieren.

Ein Beispiel: Verschiedene Chat-Dienste nutzen Webhooks, um automatische Benachrichtigungen im Chatraum anzuzeigen – etwa Benachrichtigungen für ein Supportteam, dass ein neues -Ticket für den Helpdesk eingegangen ist.

Internet der Dinge

Immer mehr technische Geräte streamen über Cloud-Dienste Daten, die verarbeitet, transformiert oder gespeichert werden – von der app-gesteuerten Kaffeemaschine in der privaten Küche bis zur ferngesteuerten smarten Fabrik. Geräte verschiedener Hersteller nehmen miteinander Kontakt auf, wenn etwa die Wetter-App auf dem Smartphone auslöst, dass bei starkem Wind die Markise zuhause einfährt. Die Dienste der Anbieter serverloser Infrastrukturen halten Funktion vor, die solche Nachrichten automatisiert transformieren, verarbeiten und in Datenbanken einspeisen.

Automatische Skalierung

Die Anwendungsbeispiele lassen es ahnen: Ein entscheidender Vorteil der serverlosen Infrastrukturen ist ihre Flexibilität. Die Anpassung der Ressourcen wird auf den Cloud- Anbieter verlagert. Er stellt immer ausreichend Serverplatz zur Verfügung und skaliert je nach Anfrage-Aufkommen die Kapazitäten. Hinzu kommt, dass auf Entwicklerseite die Komplexität erheblich reduziert wird. Server, Betriebssystem und Co. fallen nicht mehr in sein Ressort. Daran orientieren sich auch die Abrechnungsmodelle. Bezahlt wird nur, wenn Funktionen ausgeführt und Kapazitäten genutzt werden.

Und die Nachteile?

Das hört sich doch toll an, oder? Entwickler können sich auf ihre Kernaufgaben konzentrieren und müssen sich nicht mehr mit ablenkenden Fragen zur Infrastruktur herumschlagen. Allerdings mahnen Kritiker der Technologie, dass Entwickler zunehmend die Kontrolle über ihre Projekte verlieren. Möglichkeiten auf die virtuellen Maschinen zuzugreifen oder Änderungen an Betriebssystem oder Laufzeitumgebung vorzunehmen, gibt es kaum.

Auch warnen sie vor einem Lock-in-Effekt. Wer sich einmal für einen Cloud-Anbieter und dessen Produkt für eine serverlose Infrastruktur gebunden hat, verknüpft seine Entwicklungen ausschließlich mit dessen Umgebungen. Da gilt der Ratschlag: Drum prüfe, wer sich bindet … .

Die richtige Strategie ist gefragt

Ebenso wie beim Aufsetzen klassischer IT-Projekte oder vor dem Verlagern von Diensten in eine Cloud macht es Sinn, sich im Vorfeld strategisch mit dem Thema „serverless infrastructures“ auseinanderzusetzen.

  • Was sind die aktuellen Anforderungen an die IT- Projekte?
  • Welche Ziele sollen erreicht werden?
  • Wie wichtig ist eine vollständige Kontrolle über alle Details?

Kampagnen oder Minimal Viable Products im Rahmen der Prototypen- Entwicklung sind prädestiniert für die Datenverarbeitung ohne Server. Andere IT-Projekte eignen sich vielleicht eher weniger für die neue Technologie.
Unternehmen wie das Adacor-Tochterunternehmen Exolink erstellen zu solchen Fragestellungen fundierte Analysen. Sie beziehen bei ihrer Betrachtung die verschiedenen Anbieter und Modelle ein, begleiten plattformübergreifend die ersten Schritte in der neuen Umgebung und stehen Entwicklern kompetent als Know-how-Backup zur Seite.

, , , , ,

Die besten IT-News per E-Mail

Immer als Erster über brandaktuelle IT-Themen informiert sein!


Weitere Artikel zum Thema lesen

Einfluss der Alles-ist-Service-Doktrin

Cloud

Was XaaS bedeutet

Der Einfluss der Alles-ist-Service-Doktrin auf die IT.

weiter lesen

Möglichkeiten und Stärken einer Hybrid Cloud

Cloud

Möglichkeiten & Stärken der Hybrid Cloud

Cloud ist nicht gleich Cloud - unser Beitrag bringt Klarheit in die Vielzahl von Cloudkonzepten.

weiter lesen

Berechnung von Verfügbarkeiten von IT-Plattformen

Biz & Trends, Cloud, Hosting

Berechnung von Verfügbarkeiten von IT-Plattformen

So lässt sich die Verfügbarkeit von IT-Plattformen sinnvoll berechnen.

weiter lesen


Neueste Nachrichten von Adacor

Biz & Trends

UN Global Compact: Adacor jetzt Participant-Mitglied

Im UN Global Compact wird eine gerechtere Ausgestaltung der Globalisierung umgesetzt. Die Adacor Group setzt sich im Rahmen ihrer Participant-Mitgliedschaft aktiv ein.

weiter lesen

Cloud

Jira & Confluence von Atlassian optimal nutzen

Die agile Zusammenarbeit mit Jira, Confluence, Bitbucket und Hipchat noch besser digital organisieren? Durch Application Hosting mehr Vorteile aus den Atlassian-Tools ziehen.

weiter lesen

Biz & Trends

Wie Sie Anliegen im Job mit Erfolg formulieren

Ein Anliegen im Job erfolgreich zu formulieren, ist nicht immer leicht. Oft liegt der Teufel im Detail und schon ein einziger Buchstabe kann den...

weiter lesen

Diese Website verwendet Cookies. Mit der weiteren Nutzung der Website stimmen Sie unserer Datenschutzerklärung zu.
Für weitere Informationen klicken Sie bitte hier.