Jeder kennt sie, keiner will sie mehr missen: die kleinen Helfer des Alltags – die sogenannten APPs. Sie organisieren unsere Termine, Kontakte und unterhalten uns auch gerne einmal. Nur wenige Spezialisten wissen, wie diese kleinen Wunderwerke im Inneren aufgebaut sind. Ganze Rechenzentren, dutzende von Server und ein gut ausgebautes Internet sind dafür notwendig, reibungslose und schnelle Antwortzeiten für eine beliebte einzelne Anwendung zu ermöglichen und dies für einen Preis, der nur wenige Euros betragen sollte, wenn nicht gleich ganz umsonst. Dazu erwarten wir eine fehlerfreie und sichere Verwaltung unserer privaten Daten.

Anfangs wurden solche Programme in einem Block erstellt. Es entstanden monolithische Applikationen mit Millionen Zeilen Programmcode, die einfach als Ganzes geschnürt installiert werden konnten. Eine Fehlerbehebung oder auch nur eine Funktionserweiterung bedeutete den Austausch des ganzen Blockes. Teilweise verhinderte oder verzögerte jedoch die hohe Komplexität eine schnelle und sinnvolle Bearbeitung des Gesamtsystems. Nicht so bei Applikationen, die eine Microservice-Architektur besitzen. Nach Außen verhalten sie sich genauso wie normale Programme, im Innern jedoch bestehen sie aus vielen kleinen Paketen ohne hohe Komplexität, die jeweils eine spezielle Aufgabe erfüllen – die sogenannten Microservices. Der große Vorteil: ein solches Paket, kann während der Programmausführung einfach und schnell getauscht werden, ohne dass das Gesamtsystem etwas davon spürt . Standardisierte Kommunikationsprotokolle und Schnittstellen, sowie die dahinter liegende Architektur mit Containern und Dockern ermöglichen dies. Fehlerbehebungen und auch Funktionserweiterungen können somit on-the-fly durchgeführt werden. Falls die Gesamtleistung des Systems nicht ausreichen sollte, werden weitere Microservices parallel dazugeschaltet und so Engpässe vermieden. Wie in einem Orchester werden die einzelnen Musiker durch den Dirigenten geleitet und bei Bedarf werden einmal mehr oder weniger Musikinstrumente aktiviert, Microservices werden orchestriert, besser noch, sie folgen einer Choreographie.

Fazit

Microservice Architektur für Applikationen ermöglicht kleinere Pakete mit deutlich geringerer Komplexität zu bauen, dadurch ergibt sich eine bessere Wartbarkeit des Systems. Zudem kann wesentlich schneller eine erste Version ausgeliefert werden, deren Funktionalität schrittweise ausgebaut werden kann. Erkannte Fehler lassen sich deutlich schneller beseitigen. Auch sind Fehler in einem sehr frühen Zeitpunkt erkennbar und lassen sich dadurch deutlich kostengünstiger abstellen. Daher arbeiten wir auch in unserem Produkt ZERO defects mit Microservice Architektur.