[Microservices|Microservice] ist ein Trend zur feiner werdenden Modularisierung von Applikationen. Während früher teilweise sogar mehrere Anwendungen auf einem [Application Server] [deployed|Deployment] wurden, laufen die Module zunehmend in eigenen Prozessen. Die Vorsilbe "Micro" drückt den Trend aus, die Modularisierung in immer kleinere Einheiten zu unterteilen.

Eingesetzte [Technologien] sind auf der entsprechenden Seite zu finden.

!!!Eigenschaften
Vorteile sind:

* __Aktualisierbarkeit:__ Aktualisierung einzelner Module, sogenannte Continuous Delivery
* __Redundanz:__ Mehrere Instanzen des gleichen Moduls laufen zur gleichen Zeit
* __Skalierbarkeit:__ Die Anzahl der Modulinstanzen kann nach Bedarf angepasst werden. Bei hoher Last starten zusätzliche Module, bei geringerer Last wird die Zahl laufender Module verringert.
* __Überwachung:__ Durch die externe Kommunikation (meist HTTP/JSON) kann in komplexen Systemen eine Übersicht des laufenden Betriebs erstellt werden. Beispiel ist Hystrix mit Turbine.

Nachteile sind:

* __Overhead:__ Die Verteilung benötigt mehr Ressourcen, mehr Prozesse, mehr Speicher und mehr CPU um dieselben Aufgaben durchzuführen, als dies mit einer monilithischen Anwendung der Fall wäre.