DDD
Kontextintegration und DDD-Gesamtwerk
Bounded Contexts arbeiten über Published Language, Outbox, Inbox und Process Manager zusammen.
4 neue ModuleJava 21
Kontextintegration und Zuverlässigkeit
Ziel
Die drei fachlichen Kontexte Ordering, Inventory und Payment bleiben getrennte Konsistenz- und Sprachräume. Ihre Zusammenarbeit erfolgt ausschließlich über versionierte Integration Events, öffentliche Commands und einen eigenständigen Process Manager.
Integrationsprinzipien
- Domain Events bleiben innerhalb des erzeugenden Bounded Contexts.
- Integration Events bilden eine stabile Published Language.
- Übersetzer sind die einzige Stelle, an der interne Fachtypen in externe Verträge überführt werden.
- Jeder Context schreibt seine Outbox in derselben lokalen Transaktion wie seinen Fachzustand.
- Brokerzustellung ist mindestens einmal; Consumer müssen idempotent sein.
- Kein verteilter Datenbank-Commit verbindet die Kontexte.
Module
| Modul | Verantwortung |
|---|---|
| ddd-integration-contracts | versionierte externe Ereignisverträge |
| ddd-integration-adapters | ACL, Outbox, Inbox und Broker-Ports |
| ddd-order-workflow | contextübergreifender Process Manager |
| ddd-context-integration-tests | Fitness Functions und Workflowtests |