Zum Inhalt springen

Monolith

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 08.11.2026

Ein Monolith ist eine Anwendung, deren Teile alle in einem gemeinsamen Programm stecken. Shop, Kundenkonto, Verwaltung und Schnittstellen teilen sich Code und Datenbank und werden zusammen ausgeliefert.

Monolith

Eine Software, die als eine Einheit entwickelt, gebaut und betrieben wird, statt aus getrennten Diensten zu bestehen.
Beispiel: „Das Buchungssystem ist ein Monolith in Laravel, ein Deployment spielt alle Teile auf einmal aus.“

Das griechische monolithos bedeutet ein einzelner Stein.

Abgrenzung zu Microservices: Dort ist die Anwendung in viele kleine Dienste geteilt, die getrennt laufen und über das Netz miteinander sprechen.

Was für einen Monolith spricht

Er ist einfach. Ein Code, eine Datenbank, ein Deployment, ein Ort für die Fehlersuche. Funktionen rufen sich direkt auf und müssen nicht über das Netz miteinander reden, und Änderungen, die mehrere Bereiche betreffen, landen in einem Schritt.

Für die allermeisten Websites und Webanwendungen ist das die richtige Wahl. Fast jede Website mit CMS ist ein Monolith, diese hier eingeschlossen.

Wann ein Monolith zu groß wird

Wenn viele Teams gleichzeitig daran arbeiten und sich gegenseitig blockieren, wenn ein kleiner Fehler die ganze Anwendung lahmlegt oder wenn einzelne Teile sehr viel mehr Last tragen müssen als der Rest.

Häufiger als an der Größe scheitert ein Monolith an fehlender Ordnung. Wenn jeder Teil mit jedem verflochten ist, hilft auch das Aufteilen in Dienste nicht.

Der modulare Monolith

Ein Mittelweg, der in den letzten Jahren an Zuspruch gewonnen hat: eine Anwendung, ein Deployment, aber innen klar getrennte Module mit festen Schnittstellen. Muss ein Modul später doch eigenständig werden, lässt es sich ohne großen Umbau herauslösen.

Siehe auch:

Microservices

Eine Bauweise, bei der eine Anwendung aus vielen kleinen, eigenständigen Diensten besteht.

#Programmiersprachen

Softwarearchitektur

Der grundlegende Aufbau einer Software: welche Teile es gibt und wie sie zusammenarbeiten.

#Programmiersprachen

Laravel

Ein PHP-Framework für Webanwendungen, bekannt für seine lesbare Schreibweise und sein Ökosystem.

#Programmiersprachen

Monorepo

Ein einzelnes Repository, in dem mehrere Projekte oder Pakete gemeinsam liegen.

#Programmiersprachen #Deployment & Versionierung

Legacy-Code

Älterer Code, der weiter gebraucht wird, aber schwer zu ändern ist.

#Programmiersprachen

Technische Schulden (Technical Debt)

Der Aufwand, der sich ansammelt, wenn eine schnelle Lösung gewählt wird statt einer tragfähigen.

#Programmiersprachen