Der Materna Blog – wissen was los ist

©SFIO CRACHO - stock.adobe.com

Microservices: Mit großen Schritten kleine Services entwickeln

Think big, start small – das ist das Credo beim Einsatz von Microservices in der Anwendungsentwicklung. Also schön einen Fuß vor den anderen setzen.

Beim Einsatz von Microservices in der Anwendungsentwicklung werden Applikationen in kleinere Projekte bzw. Services zerlegt. Dies sorgt unter anderem für verbesserte Skalierung und eröffnet mehr Freiräume bei der Wahl einer Hosting-Plattform wie Cloud-Anbieter oder das eigene Rechenzentrum. Es entsteht also keine monolithische Applikation, die zentral auf einem Server läuft, sondern eine modulare und verteilte Gesamtanwendung. Zudem sind bei einer Microservices-Architektur die fachlichen Services, die hier als Domänen bezeichnet werden, unabhängig voneinander lauffähig und werden auch separat entwickelt. Aus Anwendersicht ist das Ergebnis aber nach wie vor eine einzige Applikation.

Da Microservices eigenständig ablaufen und nur lose über Standardschnittstellen gekoppelt sind, lassen sich einzelne Funktionen einer Applikation freier skalieren. Damit bleiben beispielsweise Antwortzeiten von Online-Shops auch bei hohen Besucherzahlen konstant. Darüber hinaus erhalten Unternehmen mehr Spielraum bei der Organisation ihrer Entwicklerteams: Je nach Relevanz eines fachlichen Services können Verantwortliche die benötigte Menge an Experten oder anderen Ressourcen flexibel reservieren. Auch die verwendeten Technologien lassen sich je nach Entwicklerteam und fachlicher Anforderung variieren. Ebenfalls denkbar: Ein Technologiewechsel zu einem späteren Zeitpunkt, um beispielsweise von kommerziellen Lösungen auf Open Source-Produkte zu wechseln.

Ein weiterer wichtiger Aspekt ist die Möglichkeit, einen Service bewusst mit einem kleinen Funktionsumfang zu entwickeln. Damit wird eine kurze Entwicklungszeit für eine Komponente erreicht. Der Vorteil: Ist ein Fehler im Service vorhanden, die Skalierung nicht ausreichend oder machen veränderte Marktbedingungen eine Neuprogrammierung notwendig, kann das Team zeitnah eine neue Version entwickeln. Das Risiko für die Gesamtapplikation ist gering, da nur ein Teil der Lösung verändert wird. Bei monolithischen Systemen ist ein wesentlich höherer Aufwand notwendig, im Extremfall muss die komplette Applikation als Update neu ausgerollt werden.

Auf der anderen Seite verlangt der Einsatz von Microservices neue Fähigkeiten innerhalb der IT-Organisation. Unternehmen scheuen oftmals den Umstieg auf Microservices, da die eigenen IT-Experten mit solchen Architekturen kaum Erfahrung haben und auch nicht die passenden IT-Tools für die Automatisierung und das Monitoring verwenden. Hier können externe Dienstleister dabei helfen, die eigene IT-Organisation effizienter aufzustellen.

Lesen Sie den kompletten Beitrag.

Schlagwörter:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.
Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Sie müssen den Bedingungen zustimmen, um fortzufahren.

Spannende Vorträge beim Materna IT-Forum
Die fünf Unterschiede von Augmented und Virtual Reality