Entdecken Sie Millionen von E-Books, Hörbüchern und vieles mehr mit einer kostenlosen Testversion

Nur $11.99/Monat nach der Testphase. Jederzeit kündbar.

Microservices: Der Hype im Realitätscheck
Microservices: Der Hype im Realitätscheck
Microservices: Der Hype im Realitätscheck
eBook51 Seiten29 Minuten

Microservices: Der Hype im Realitätscheck

Bewertung: 0 von 5 Sternen

()

Vorschau lesen

Über dieses E-Book



Kaum ein anderes Thema unterliegt momentan einem solchen Hype wie Microservices. Doch was ist eigentlich möglich mit Microservices, wo liegen Stärken und Schwächen? Dieser shortcut gibt einen kurzen Überblick über den Architekturtrend und beantwortet die wichtigsten Fragen. Dabei führt er die Vor- und Nachteile von Microservices ebenso auf wie die eigenen Erfahrungen der Autoren mit gut gemachten Microservices-Implementierungen, die den Wandel in der Technologie vereinfachen können. Auch fertige Komponenten für Konfiguration, Service Discovery und Resilience werden näher vorgestellt und ihre Einsatzmöglichkeiten erläutert.
SpracheDeutsch
Herausgeberentwickler.press
Erscheinungsdatum28. Juli 2016
ISBN9783868027372
Microservices: Der Hype im Realitätscheck

Mehr von Eberhard Wolff lesen

Ähnlich wie Microservices

Titel in dieser Serie (100)

Mehr anzeigen

Ähnliche E-Books

Programmieren für Sie

Mehr anzeigen

Ähnliche Artikel

Rezensionen für Microservices

Bewertung: 0 von 5 Sternen
0 Bewertungen

0 Bewertungen0 Rezensionen

Wie hat es Ihnen gefallen?

Zum Bewerten, tippen

Die Rezension muss mindestens 10 Wörter umfassen

    Buchvorschau

    Microservices - Eberhard Wolff

    GmbH

    1 Erfahrungen, Vor- und Nachteile von Microservices

    Kaum ein Thema ist im Moment so ein Hype wie Microservices [1]. Welche Gründe gibt es dafür? Und wie kann man Microservices gewinnbringend einsetzen? Welche Herausforderungen gibt es? Dieses Kapitel gibt einen Überblick über den Architekturtrend und beantwortet die wichtigsten Fragen.

    Microservices dienen eigentlich nur zur Modularisierung von Software. Für Modularisierung gibt es aber unzählige Ansätze: Klassen, Packages oder JARs dienen in der Java-Welt beispielsweise diesem Ziel. Nur so können auch große Projekte in kleine Einheiten aufgeteilt werden und bleiben dadurch erweiterbar und wartbar. Aber Microservices sind anders: Die wesentliche Eigenschaft von Microservices ist das unabhängige Deployment. Ein Microservice kann in Produktion gebracht werden, ohne dass die anderen Microservices ebenfalls neu deployt werden müssen. Während also bei den klassischen Deployment-Monolithen die Module wie Klassen, Packages oder JARs alle gleichzeitig in Produktion gebracht werden müssen, ist das bei Microservices nicht so. Übrigens können Deployment-Monolithen durchaus intern sauber modularisiert sein – nur müssen eben alle Module gemeinsam in Produktion gebracht werden.

    Konkret können Microservices beispielsweise als einzelne Docker-Container umgesetzt sein. Mehrere solcher Container bilden dann zusammen eine Anwendung. Jeder einzelne Microservice kann eine REST-Schnittstelle haben oder für bestimmte URLs die Weboberfläche als HTML-Seiten erzeugen.

    Durch die Aufteilung in mehrere Deployment-Einheiten wie Docker-Container ergeben sich neben dem unabhängigen Deployment noch verschiedene andere Konsequenzen: Jeder Microservice kann in einer anderen Programmiersprache auf einer anderen Plattform implementiert sein. In einem Docker-Container kann schließlich fast jede Infrastruktur laufen. Ebenso kann jeder Microservice einzeln skaliert werden. Dazu sind nur ein Load Balancer und mehrere Instanzen des Docker-Containers notwendig. Auch bezüglich der Robustheit ist ein Microservice eine Einheit: Wenn beispielsweise ein Microservice zu viel Speicher allokiert oder die CPU stark belastet, beeinflusst das nur diesen einen Microservice. Wenn die anderen Microservices sogar den Ausfall dieses Microservice tolerieren können, entsteht so ein sehr robustes System.

    Es gibt auch ganz andere Infrastrukturen für Microservices. Beispielsweise erlaubt Amazon Lambda [2] das Deployment einzelner in Java, JavaScript oder Python geschriebener Funktionen. Diese werden auch automatisch in ein Monitoring integriert. Die Abrechnung erfolgt pro Aufruf, wobei die erste Million Aufrufe kostenlos ist.

    Eine solche Technologie verringert den Aufwand für einen Microservice erheblich: Er muss nur mit einem Kommandozeilenwerkzeug deployt werden, den Rest erledigt die Infrastruktur. Es ist also kein Aufbau eines Docker-Containers oder ähnliches notwendig. Solche Technologien können die Nutzung von Microservices erheblich vereinfachen. Dennoch bieten sie eine gute Isolation und eine gute Skalierbarkeit einzelner Services. Microservices müssen also nicht unbedingt Docker nutzen – im Gegenteil, andere Ansätze wie Amazon Lambda können sogar noch einfacher und effizienter sein.

    Die drei Microservices-Varianten

    Gefällt Ihnen die Vorschau?
    Seite 1 von 1