Microservice-Architektur ist eine serviceorientierte Architektur. In der Microservice-Architektur gibt es eine große Anzahl von Mikrodienste . Durch die Kombination aller Microservices entsteht ein großer Service. In der Microservice-Architektur kommunizieren alle Dienste miteinander.
Im Mikrodienste Im Tutorial werden wir verstehen, wie man Microservices implementiert Frühlingswolke . Wir werden lernen, wie man die Kommunikation zwischen Microservices aufbaut, aktivieren Lastverteilung , Skalierung von Microservices nach oben und unten . Wir werden es auch lernen Zentralisieren Sie die Konfiguration von Microservices mit Spring Cloud-Konfigurationsserver . Wir werden umsetzen Eureka-Namensserver Und Verteilte Ablaufverfolgung mit Frühlingswolkendetektiv Und Zipkin . Wir werden Microservices mit Fehlertoleranz erstellen Zipkin .
Unser Mikrodienste Das Tutorial erläutert die Grundfunktionen von Microservice-Architektur zusammen mit relevanten Beispielen zum leichteren Verständnis.
Was sind Microservices?
Definition : Entsprechend Sam Newman , „Microservices sind die kleinen Dienste, die zusammenarbeiten.“
Entsprechend James Lewis und Martin Fowler „Der Microservice-Architekturstil ist ein Ansatz zur Entwicklung einer einzelnen Anwendung als Suite kleiner Dienste.“ Jeder Microservice führt seinen Prozess aus und kommuniziert mit leichtgewichtigen Mechanismen. „Diese Dienste basieren auf Geschäftsfunktionen und werden unabhängig von vollautomatischen Bereitstellungsmaschinen entwickelt.“
Es besteht ein absolutes Minimum an zentraler Verwaltung dieser Dienste, die möglicherweise in verschiedenen Programmiersprachen geschrieben sind und unterschiedliche Datenspeichertechnologien verwenden.
Modem vs. Router
Punkte, die man sich merken sollte
- Dies sind die Dienste, die von REST bereitgestellt werden.
- Dabei handelt es sich um kleine, gut ausgewählte, einsetzbare Einheiten.
- Die Dienste müssen cloudfähig sein.
Der Microservice definiert einen Ansatz für die Architektur, der eine Anwendung in einen Pool lose gekoppelter Dienste aufteilt, die Geschäftsanforderungen umsetzen. Es ist neben Serviceorientierte Architektur (SOA) . Das wichtigste Merkmal der Microservice-basierten Architektur ist ihre Leistungsfähigkeit Kontinuierliche Lieferung einer großen und komplexen Anwendung.
Microservice hilft dabei, die Anwendung zu unterbrechen und logisch unabhängige kleinere Anwendungen zu erstellen. Beispielsweise können wir mit Hilfe von Amazon AWS mit minimalem Aufwand eine Cloud-Anwendung erstellen.
In der obigen Abbildung verfügt jeder Microservice über eine eigene Geschäftsschicht und Datenbank. Wenn wir einen Microservice ändern, hat dies keine Auswirkungen auf die anderen Services. Diese Dienste kommunizieren miteinander über einfache Protokolle wie HTTP oder REST oder Messaging-Protokolle.
Prinzipien von Microservices
Es gibt folgende Prinzipien von Microservices:
- Prinzip der Einzelverantwortung
- Basierend auf der Geschäftsdomäne
- Fehler isolieren
- Automatisierung der Infrastruktur
- Unabhängig bereitstellen
Prinzip der Einzelverantwortung
Das Single-Responsibility-Prinzip besagt, dass eine Klasse oder ein Modul in einem Programm nur eine Verantwortung haben sollte. Jeder Microservice kann nicht mehr als eine Verantwortung gleichzeitig bedienen.
Git-Status
Basierend auf der Geschäftsdomäne
Microservice beschränkt sich niemals darauf, geeignete Technologie-Stacks oder Datenbanken zu akzeptieren. Der Stack oder die Datenbank eignet sich am besten zur Lösung des Geschäftszwecks.
Isolierter Fehler
Die große Anwendung kann vom Ausfall eines einzelnen Moduls weitgehend verschont bleiben. Es ist jederzeit möglich, dass ein Dienst ausfällt. Daher ist es wichtig, Fehler schnell zu erkennen und Fehler möglichst automatisch zu beheben.
Infrastrukturautomatisierung
Die Infrastrukturautomatisierung ist der Prozess der Skripterstellung von Umgebungen. Mithilfe der Skriptumgebung können wir dieselbe Konfiguration auf einen einzelnen Knoten oder Tausende von Knoten anwenden. Es wird auch als Konfigurationsmanagement, skriptgesteuerte Infrastrukturen und Systemkonfigurationsmanagement bezeichnet.
Unabhängig bereitstellen
Microservices sind plattformunabhängig. Das bedeutet, dass wir sie unabhängig entwerfen und bereitstellen können, ohne die anderen Dienste zu beeinträchtigen.
Hallo Welt mit Java
Publikum
Unser Microservices-Tutorial richtet sich an Softwareprofis und Anfänger, die die Microservices-Architektur in einfachen Schritten erlernen möchten. Dieses Tutorial vermittelt Ihnen detaillierte Kenntnisse über die Architektur von Microservices und deren Komponenten RabbitMQ-Server, Eureka-Namensserver, Zuul-API-Gateway, Ribbon, Hystrix, Und Zipkin-Server . Nach Abschluss dieses Tutorials können Sie mit der Entwicklung beginnen Microservices-Dienste mit Frühlingswolke .
Voraussetzungen
Bevor Sie mit diesem Tutorial fortfahren, sollten Sie über grundlegende Kenntnisse verfügen Java , Frühling, Und Frühlingswolke Rahmen. Weil wir Microservices mit Spring Cloud entwickeln werden.
Problem
Wir versichern Ihnen, dass Sie mit dem Microservices-Tutorial keine Probleme finden werden. Sollte sich ein Fehler einschleichen, posten Sie das Problem bitte im Kontaktformular.