
Hexagonale Architektur in der Praxis
Wie du hexagonale Architektur (Ports and Adapters) in einer echten Anwendung umsetzt — Geschäftslogik von der Infrastruktur trennen, mit klaren Grenzen, Dependency Inversion und testbaren Kerndomänen.
Kategorien
Systeme & Muster · 39 Artikel · Seite 3 von 4

Wie du hexagonale Architektur (Ports and Adapters) in einer echten Anwendung umsetzt — Geschäftslogik von der Infrastruktur trennen, mit klaren Grenzen, Dependency Inversion und testbaren Kerndomänen.

So entwirfst du ein Plugin-System, mit dem Nutzer deine Anwendung erweitern können, ohne ihren Kern zu verändern — mit Plugin-Schnittstellen, Lifecycle-Hooks, Abhängigkeitsauflösung und Sandboxing.

Ein praktischer Leitfaden zu Konsensalgorithmen — mit Raft, Paxos und Leader-Election-Mustern sowie Beispielen aus der Praxis, wann und warum verteilte Systeme sie brauchen.

Ein praktischer Leitfaden zu Event Sourcing: wann man es einsetzt, wie man Event Stores implementiert, Projektionen baut, Schema-Evolution handhabt und typische Fehler vermeidet.

Wie API-Gateways Routing, Authentifizierung, Rate Limiting und Antwortaggregation handhaben – mit Mustern zum Bauen oder Auswählen des richtigen Gateways für deine Architektur.

Ein Vergleich der Concurrency-Modelle Threads, async/await und Actor-basiert — wann welches passt, welche Tradeoffs sie haben und wie man typische Fallstricke vermeidet.

Wie sich Timeouts, Retries und Backoff-Strategien implementieren lassen, die kaskadierende Ausfälle in verteilten Architekturen verhindern.

Ein Service Mesh verlagert Netzwerkaufgaben wie Retries, Circuit Breaking, mTLS und Observability aus dem Anwendungscode in die Infrastrukturebene.

Wenn ein nachgelagerter Dienst ausfällt, machen weitere Anfragen alles nur schlimmer — das Circuit-Breaker-Pattern stoppt die Kaskade durch schnelles Fehlschlagen.

Command Query Responsibility Segregation nutzt unterschiedliche Modelle für Lese- und Schreibzugriffe — hier erfährst du, wann das echte Probleme löst und wann es unnötige Komplexität ist.

Entities, Value Objects, Aggregates und Bounded Contexts – die DDD-Patterns, die komplexe Geschäftslogik organisiert halten, ohne einfache Systeme zu überfrachten.

Ereignisgesteuerte Systeme entkoppeln Producer und Consumer durch asynchrone Nachrichtenübermittlung — aber eventuelle Konsistenz, Ordnungsgarantien und Idempotenz bringen echte Komplexität mit sich.