Was sind Microservices?
Microservices sind kleine, autonome Dienste, die zusammenarbeiten. Der Schlüssel für eine gute Microservice-Architektur liegt in der Implementierung kleiner und autonomer Microservices.
Wie funktioniert ein Microservice?
Microservices sind ein Software-Architekturstil, in dem große komplexe Softwareanwendungen aus mehreren Diensten anstatt aus monolithischen Anwendungen bestehen. Microservices können unabhängig voneinander eingesetzt werden.
Wie programmiere ich einen Microservice?
Ein Microservice lässt sich in einem IT-System losgelöst von anderen Services einsetzen. Gegenseitig sind Microservices lose gekoppelt, was bedeutet, dass jeder dieser Microservices sich auf die Erledigung einer einzigen Aufgabe konzentriert. Gegenseitige Abhängigkeiten der Microservices untereinander – die zu unerwünschten Effekten wie dem eines Dead-Locks führen können, werden so bei der Microservice-Programmierung gezielt vermieden.
Darauf solltest Du bei der Mircoservice-Programmierung achten:
Bei der Umsetzung in der Programmierung von Microservices musst Du konsequent darauf achten, dass deine Services immer mehrere Clients in einer typischen Architektur unterstützen. Micro-Services werden also vom Programmierer losgelöst von einer spezifischen Systemumgebung konzipiert.
Welche Faktoren müssen Microservices beachten?
Für eine gute Microservices-basierte Anwendung gilt es mehrere Faktoren zu berücksichtigen.
- Microservices sind eine unabhängige Arbeitseinheit, die klein genug ist, um in Bezug auf die Programm-Funktion für sich allein zu stehen.
- Ein gut designer Microservice erfordert keine Koordination für den Einsatz mit anderen anderen Microservices.
- Lose Kopplung der Microservices ermöglicht häufige und schnelle Bereitstellung von Anwendungen, so dass die Microservice-Consumer dringend benötigte Funktionen und deren Fähigkeiten sofort nutzen können.
- Microservices sollten mit der Programmiersprache erstellt werden, die für das Endergebnis am sinnvollsten ist.
Empfehlungen für Microservices
Micro-Services werden zusammengesetzt, um komplexe Anwendungen zu bilden. Das bedeutet keinesfalls, dass die in derselben Programmiersprache geschrieben werden müssen, die typisch für die Referenz-Umgebung ist.
In manchen Projekten kann Java die richtige Sprache sein, während es Python für andere Programmieraufgaben ist.
API-basierte Microservice-Kommunikation
Die Kommunikation mit Microservices erfolgt immer über sprachneutrale APIs. In der Regel nutzt eine Microservice-API ein Hypertext Transfer Protocol (HTTPS)-basiertes Protokoll und eine Resource wie REST als Anwendungsprogramm-Schnittstelle (API).