Was sind Microservices?
Microservices sind ein Architekturstil, bei dem eine Anwendung aus vielen kleinen, eigenständigen Diensten besteht. Jeder Dienst erfüllt eine klar abgegrenzte Aufgabe, lässt sich unabhängig entwickeln, ausliefern und skalieren und kommuniziert über Schnittstellen mit den anderen.

Microservices: Definition
Das Gegenmodell ist der Monolith: eine Anwendung, in der alle Funktionen – von der Benutzerverwaltung über den Warenkorb bis zur Rechnung – in einem gemeinsamen Codeblock stecken und gemeinsam ausgeliefert werden. In einer Microservice-Architektur wird diese Anwendung in einzelne Dienste zerlegt, etwa Katalog, Bestellung, Zahlung und Versand.
Jeder Dienst hat idealerweise seine eigene Datenhaltung und kann von einem kleinen Team verantwortet werden. Änderungen an einem Dienst erfordern nicht, die gesamte Anwendung neu zu veröffentlichen. Der Zuschnitt orientiert sich an fachlichen Bereichen, nicht an technischen Schichten.
So funktionieren Microservices
Die Dienste kommunizieren über klar definierte Schnittstellen – synchron etwa per REST-API oder gRPC, asynchron über Nachrichtensysteme wie RabbitMQ oder Apache Kafka. Ein API-Gateway bündelt häufig die Anfragen von außen und leitet sie an den zuständigen Dienst weiter.
Damit das Zusammenspiel funktioniert, braucht jeder Dienst einen klaren Vertrag: Welche Daten nimmt er an, welche gibt er zurück, wie reagiert er auf Fehler? Ändert sich ein Dienst, müssen seine Schnittstellen abwärtskompatibel bleiben oder versioniert werden.
- Eigenständige Dienste mit klar abgegrenzter Fachlichkeit
- Kommunikation über APIs oder Nachrichten
- Betrieb meist in Containern, z. B. mit Docker und Kubernetes
- Zentrales Monitoring und Logging über alle Dienste
Vorteile und Grenzen von Microservices
Microservices erlauben es, stark beanspruchte Teile gezielt zu skalieren, Technologien pro Dienst passend zu wählen und mehrere Teams parallel arbeiten zu lassen. Fällt ein Dienst aus, muss nicht zwangsläufig die gesamte Anwendung stillstehen.
Dem steht deutlich mehr Komplexität gegenüber: verteilte Daten, Netzwerkfehler, aufwendigeres Testen und Monitoring. Für kleine Teams und frühe Produktphasen ist ein gut strukturierter, modularer Monolith oft die bessere Wahl – er lässt sich später gezielt aufteilen, wenn ein konkreter Bedarf entsteht.
- Unabhängige Auslieferung und Skalierung einzelner Funktionen
- Parallele Arbeit mehrerer Teams
- Höherer Aufwand für Betrieb, Tests und Überwachung
- Lohnt sich vor allem bei großen, wachsenden Systemen
Praxisbeispiel: schrittweise Zerlegung eines Monolithen
Ein Onlinehändler betreibt einen über Jahre gewachsenen Shop. Besonders die Produktsuche gerät bei Aktionen unter Last und bremst den gesamten Shop aus. Statt alles neu zu schreiben, wird zunächst die Suche als eigener Dienst ausgelagert und separat skaliert. Weitere Bereiche folgen nur dort, wo es einen klaren Nutzen gibt.
Nano Concepts bewertet bestehende Architekturen nüchtern und empfiehlt Microservices nur dort, wo sie Ihr Problem tatsächlich lösen – andernfalls eine sauber modularisierte Anwendung.
Häufige Fragen zu Microservices
Ein Monolith ist eine einzige, gemeinsam ausgelieferte Anwendung. Microservices teilen die Funktionen in eigenständige Dienste auf, die getrennt entwickelt und betrieben werden. Beide Ansätze können sauber oder unsauber umgesetzt sein – entscheidend ist die Struktur im Inneren.
Nein. Sie lösen Skalierungs- und Organisationsprobleme großer Systeme, bringen aber viel Komplexität mit. Für viele mittelständische Anwendungen ist ein modularer Monolith wirtschaftlicher.
Nicht zwingend, aber Container und eine Orchestrierung erleichtern Betrieb und Skalierung vieler Dienste erheblich. Bei wenigen Diensten reichen oft einfachere Lösungen.
Passende Leistungen
Softwareentwicklung
Software von der Anforderung bis zum Betrieb – Web, Mobile und Schnittstellen aus einer Hand.
Mehr erfahrenAPI & Backend
Schnittstellen und Backends, die ERP, CRM, Shop und Apps verbinden – automatischer Datenaustausch statt Abtippen.
Mehr erfahrenDevOps & CI/CD
Automatisierte Tests, Builds und Deployments – für schnellere Releases und weniger Ausfälle im Livebetrieb.
Mehr erfahrenVerwandte Begriffe
Relevant für diese Branchen
Passende Magazin-Beiträge

REST-APIs mit OpenAPI: Design, Versionierung und Fehlerkultur
Eine gute API ist verständlich, stabil und gut dokumentiert. Wie Sie REST-APIs mit OpenAPI sauber entwerfen, versionieren und mit einer klaren Fehlerkultur Integrationsaufwand sparen.
Weiterlesen
Technical Debt bewerten: Zinsen zahlen oder Schulden tilgen?
Technische Schuld ist kein Synonym für schlechten Code – gefährlich wird sie erst, wenn sie unsichtbar bleibt. So bewerten Sie Altlasten nach Auswirkung und Aufwand und bauen sie planbar ab.
Weiterlesen
Lastenheft für Softwareprojekte: Aufbau und Checkliste
Ein gutes Lastenheft macht Angebote vergleichbar und Festpreise möglich. So ist es aufgebaut – mit Checkliste für Ihr nächstes Softwareprojekt.
Weiterlesen