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 gemeinfrei: Ram Kumar - Pexels.com)

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

Ausfallsicherheit mit Cloud Foundry

Cloud-agnostische Softwareentwicklung, Teil 2

Ausfallsicherheit mit Cloud Foundry

Cloud Foundry verspricht Entwicklern die Flexibilität Cloud-agnostischer Anwendungsportabilität, den Heiligen Gral der Hochverfügbarkeit. Doch die Befreiung vom Vendor-Lock-In erfordert Disziplin und neue Ansätze der Qualitätssicherung. lesen

Gründe für Cloud Foundry

Cloud-agnostische Softwareentwicklung, Teil 1

Gründe für Cloud Foundry

Das gefürchtete Phänomen des Vendor-Lock-In macht den Entwicklern in verteilten Cloud-Anwendungen zu schaffen. Die Echtzeit-Portabilität von Code zwischen Ausführungsumgebungen verschiedener Anbieter wird dank Lösungen wie Cloud Foundry dennoch Realität. lesen

Cloud-native Alternativen zu Jenkins

Consol testet moderne CI- und CD-Tools

Cloud-native Alternativen zu Jenkins

Beim Cloud-native Development stoßen gängige Continuous-Integration- und -Delivery-Tools an ihre Grenzen. Auf Microservice-Architekturen sind diese Werkzeuge schlicht nicht ausgerichtet, meint das Consulting-Unternehmen Consol, das einige Alternativen identifiziert hat. lesen

Microservices und Monolithen schließen sich nicht aus

Ergänzung zu modernen Architekturmustern

Microservices und Monolithen schließen sich nicht aus

Microservices stehen in der Gunst der Software-Entwickler zurzeit weit oben, aber sie haben auch Nachteile. Monolithische Anwendungen wiederum sind besser als ihr Ruf. Smarte Programmierer vereinen das Beste aus beiden Welten. lesen

Der Weg in die Wolke mit Web-APIs

API-Hosting als Basis einer Microservice-Architektur

Der Weg in die Wolke mit Web-APIs

Microservices gelten heute als Basis moderner Anwendungsarchitekturen. Statt einer monolithischen und schwerfälligen Software wird die gesamte Funktionalität auf überschaubare Teilsysteme verteilt. Die entstandenen Services werden dann üblicherweise über das Internet und RESTful APIs zur Verfügung gestellt. lesen

Verbessertes Testing von Mainframe-Software

Updates und OpenLegacy-Integration für Compuware Topaz

Verbessertes Testing von Mainframe-Software

Die auf Mainframe-Anwendungen ausgerichtete Testing-Lösung Topaz for Total Test steht in einer neuen Version bereit. Compuware hob in einer Ankündigung insbesondere optimierte Reportings und Dashboards sowie erweiterten Programm-Support hervor. lesen

COBOL – eine Programmiersprache wird uns alle überleben

Vom Mainframe in die Cloud

COBOL – eine Programmiersprache wird uns alle überleben

Die Unternehmens-IT ist in einem permanenten Wandel gefangen – aktuell mischen Microservices und Container, Programmiersprachen wie Python, R und Ruby, Blockchains, Künstliche Intelligenz (KI) und eine ominöse Facebook-Währung die Szene auf. Aber eines bleibt immer: COBOL. lesen

Wo Microservice-Architekturen sinnvoll sind

Bereitstellung nach dem Prinzip „Teile und herrsche“

Wo Microservice-Architekturen sinnvoll sind

Leichtgewichtig, zustandslos und bedarfsgerecht skalierbar: Microservice-Architekturen haben es in sich. Gleichzeitig verändern sie die Art und Weise, wie Unternehmen ihre Software entwickeln und bereitstellen. lesen

Business-Intelligence-Plattform von Infragistics

Embedded Analytics und Dashboards mit „Reveal“

Business-Intelligence-Plattform von Infragistics

Mit Reveal hat Infragistics eine Embedded-Analytics- und -Dashboard-Plattform angekündigt. Im Fokus der neuen Lösung soll die einfachere Integration von Business Analytics in Anwendungen stehen. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 44840246 / Definitionen)