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).