Definition „Mikrodienste“

Was sind Microservices?

| Autor / Redakteur: il1411 / Stephan Augsten

Jeder Microservice stellt eine gewisse Funktion zur Verfügung, gemeinsam ergeben sie eine Anwendung, deren Dienste sich recht einfach austauschen lassen.
Jeder Microservice stellt eine gewisse Funktion zur Verfügung, gemeinsam ergeben sie eine Anwendung, deren Dienste sich recht einfach austauschen lassen. (Bild: Ram Kumar - Pexels.com / CC0)

Unter Microservices versteht man Dienste, die jeweils eine kleine Aufgabe erfüllen. Die Prozesse lassen sich wie Module so miteinander verbinden, dass sich daraus eine beliebig komplexe Software ergibt.

Die Idee hinter dem Microservice-Architekturmuster entspricht weitestgehend der Unix-Philosophie: „Do one Thing and do it well“. Microservices zeichnen sich dadurch aus, dass sie sich leicht ersetzen lassen. Somit kann ein solcher Dienst vom zuständigen Entwicklerteam innerhalb kurzer Zeit ersetzt bzw. neu erstellt werden.

Jeder Microservice implementiert genau eine Funktion, wobei der Nutzen für den Anwender im Mittelpunkt steht. Microservices besitzen außerdem die Eigenschaft, dass sie ausschließlich Teams entwickelt werden. Das Team kann auch für die Entwicklung mehrerer Mikrodienste verantwortlich sein – wenn diese den fachlich zusammenhängen.

Von anderen Diensten und Prozessen sind Microservices im Übrigen isoliert. Diese Eigenschaft ermöglicht es, dass im Prinzip jeder Mikrodienst eine andere Programmiersprache oder Datenbank nutzen kann. Wie alle anderen Services müssen auch Mikrodienste sicher sein; Verfahren wie Monitoring oder Logging ermöglichen eine Überwachung, während Methoden der Authentifizierung und Autorisierung die Daten vor unerlaubten Zugriffen sichern.

Die Elemente einer Microservice-Architektur

Software, die aus einzelnen Mikrodiensten aufgebaut ist, benötigt viel Infrastruktur, wobei auch diese durch Microservices realisiert wird. Um die Lastverteilung externer HTTP-Anfragen zu steuern, werden sogenannte Load Balancer verwendet. Die Auslieferung statischer Inhalte steuert ein Content Delivery Network. Man unterscheidet Dienste, die für die Geschäftsanforderungen zuständig sind, von Plattform- und Infrastruktur-Services. Die Infrastruktur-und Plattform-Dienste übernehmen zentrale Aufgaben wie das Monitoring oder Logging.

Microservice-Architekturen per Monitoring im Blick behalten

DevOps trifft Performance-Management

Microservice-Architekturen per Monitoring im Blick behalten

21.04.17 - Wenn Software in Microservices aufgesplittet wird, wollen die unabhängigen Prozesse auch überwacht sein. Es gilt, das Monitoring im Netzwerk auf die Dienste und deren Basis – zum Beispiel die einzelnen Container – auszuweiten. lesen

Die Vorteile von Microservice-Architekturen

Mikrodienste lassen sich voneinander unabhängig entwickeln, und folglich können auch die dafür zuständigen Teams voneinander unabhängig arbeiten. Auf diese Weise lässt sich der Softwareentwicklungsprozess beschleunigen - ohne ein hohes Maß an Koordination und Kommunikation zu erzeugen.

Ein weiterer Vorteil von Mikrodiensten ist deren Größe. Weil sie so klein sind, können sie in relativ kurzer Zeit neu erstellt und ersetzt werden. Ihre geringe Größe macht Mikroservices zudem leichter wartbar, wobei die Funktionalität des Gesamtsystems stets erhalten bleibt.

Weiterhin ist es möglich, Systeme, die auf Microservices basieren, gegen den Ausfall einzelner Dienste abzusichern – eine Eigenschaft, die für ein äußerst robustes Gesamtsystem sorgt. Und nicht zuletzt ist von Vorteil, dass sich jeder Dienst mit einer anderen Technologie implementieren lässt. Dadurch wird das Experimentieren mit neuen Technologien deutlich vereinfacht.

Die Umstellung auf Microservices richtig kalkulieren

Mikrodienste als Architekturmuster

Die Umstellung auf Microservices richtig kalkulieren

28.04.17 - Microservices werden bei Software-Entwicklern und -Anbietern immer beliebter, nicht nur für neue, Container-basierte Projekte. Auch monolithische Anwendungen sollen den Mikrodiensten vermehrt weichen. Für eine erfolgreiche Neuumsetzung und Portierung ist jedoch eine gute Planung vonnöten. lesen

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Wann ist ein Service Mesh sinnvoll?

Komplexe Container-Cluster managen

Wann ist ein Service Mesh sinnvoll?

Immer öfter hört man, große Container-Implementierungen benötigten ein Service Mesh. Dabei betreiben Unternehmen ihre Applikationen schon seit Jahren erfolgreich auf Container-Plattformen – und das ohne Service Mesh. Wie lässt sich diese Unstimmigkeit auflösen? lesen

Softwaremigration für klassische Applikationen

Aus alt mach neu

Softwaremigration für klassische Applikationen

Der Begriff der Systemmigration oder Portierung impliziert in der IT die Anpassung einer bestehenden Technologie an den aktuellen Stand. Diese erfolgt meist schrittweise und kann sowohl Hard- als auch Software umfassen. In diesem Artikel betrachten wir verschiedene Szenarien der Softwaremigration. lesen

DevSecOps in 4 Schritten

Sicherheit in die DevOps-Strategie integrieren

DevSecOps in 4 Schritten

Die Agilität von DevOps und Microservices-Umgebungen macht die Integration der Sicherheit nicht gerade einfacher. DevSecOps lässt sich aber durchaus realisieren, wenn man vom traditionellen Sicherheitsdenken abrückt. lesen

Integrationsplattform für Cloud-native Entwicklung

Red Hat Integration bringt Agilität in Hybrid-Architekturen

Integrationsplattform für Cloud-native Entwicklung

Red Hat Integration wird um neue Komponenten und Funktionen zur Verbindung von Anwendungen, Daten und Geräten in hybriden Architekturen erweitert. Cloud-basiertes Self-Service Messaging und Event Streaming gehören dazu ebenso wie die vollständige Abdeckung des API-Lebenszyklus. lesen

Low-Coding mit K8s-Support und KI-Anbindung

Mendix-Integration mit IBM Cloud Services

Low-Coding mit K8s-Support und KI-Anbindung

Die Low-Code-Lösung Mendix soll sich dank einer neu konzipierten nativen Cloud-Architektur besser in die IBM Cloud integrieren. Der Zugriff auf die Watson KI-Services stand dabei ebenso im Fokus wie der Support von Kubernetes. lesen

Microservices können Abhängigkeiten zwischen Teams beseitigen

Interview mit Sidney Rabsatt von NGINX

Microservices können Abhängigkeiten zwischen Teams beseitigen

Automatisierung ist entscheidend für den Erfolg von DevOps, wie Sidney Rabsatt von NGINX kürzlich in einem Gastbeitrag bei Dev-Insider betonte. Wir haben den Experten zu wichtigen Aspekten wie Microservice-Architekturen und DevOps-Strategien befragt. lesen

Tipps zum Testen von Microservice-Architekturen

Komplexe Kommunikation von Mikrodiensten

Tipps zum Testen von Microservice-Architekturen

In Microservice-Architekturen kommunizieren viele kleine Dienste mit dedizierten Aufgaben miteinander. Dieser Datenaustausch muss beim Testing besonders im Auge behalten werden. Das IT-Beratungs- und Softwareunternehmen Consol gibt einige Tipps. lesen

Low-Code-Plattform hilft bei Altsystem-Modernisierung

OutSystems 11 unterstützt Microservices und Container

Low-Code-Plattform hilft bei Altsystem-Modernisierung

Die OutSystems-Plattform des gleichnamigen Low-Code-Experten wird auf Version 11 angehoben. Die Verbesserungen sollen der Modernisierung von Legacy-Systemen dienen, sechs neue Funktionen wurden hierfür in OutSystems 11 integriert. lesen

Microservices einführen oder nicht?

Monolithen nicht grundsätzlich aufbrechen

Microservices einführen oder nicht?

Microservices spielen inzwischen bei vielen Unternehmen eine wichtige Rolle. Die Aufsplittung von Anwendungen aber noch nicht uneingeschränkt zu empfehlen, heißt es im ThoughtWorks Technology Radar. Die Gründe wollen wir hier diskutieren. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44840246 / Definitionen)