Portal-Handbuch Final - Codex Enterprise Maven V2 Real Systems Lab

Dieses Portal-Handbuch ist die kompakte, aber vollwertige Orientierung fuer das gesamte Lernportal. Es erklaert, welche Einstiegspunkte es gibt, was die Phasen 1 bis 10 inhaltlich bedeuten und wie man das Paket sinnvoll durcharbeitet.

← Zurueck zum Index

Enthaltene Hauptbereiche
  • Enterprise-Lernportal und Index
  • Gesamt-PDF und Portal-PDF
  • Projektdokumentation
  • Praxis-Labs
  • Projektkarte
  • Maven-Projekt
  • Container-Stack
  • Runbooks, ADRs, Prompts und Berichte
Phasenuebersicht

Phase 1: Basisprojekt

Maven Multi-Module, Domain, Ports und Application Layer.

Kerninhalte:
- Multi-Module-Struktur mit klarem Parent-POM
- Domain-Modul mit Aggregate Root, Value Objects und Invarianten
- Ports fuer Repository, Payment, Outbox und Publishing
- Application Service als fachliche Orchestrierung

Wichtige Dateien:
- maven-project/pom.xml
- maven-project/domain/
- maven-project/ports/
- maven-project/application/

Sinn: Du lernst, wie ein fachlicher Kern ohne Infrastrukturabhaengigkeiten aufgebaut wird.

Phase 2: Outbox + RabbitMQ

Event-Flows mit Relay, Exchange, Queue, Consumer und DLQ-Vorbereitung.

Kerninhalte:
- Transactional Outbox Tabelle
- OutboxRelayJob fuer NEW -> PUBLISHED
- RabbitMQ Exchange order.events
- Billing Consumer als lose gekoppelter Empfaenger
- Dead Letter Queue Vorbereitung

Wichtige Dateien:
- containers/rabbitmq/definitions.json
- JdbcOutboxRelayRepository.java
- OutboxRelayJob.java
- BillingOrderAcceptedConsumer.java

Sinn: Du siehst, wie man Dual-Write-Probleme zwischen Datenbank und Message Broker vermeidet.

Phase 3: Keycloak Security

JWT Resource Server, Rollen-Mapping und geschuetzte APIs.

Kerninhalte:
- Keycloak Realm mit Rollen
- Spring Security Resource Server
- Mapping von realm_access.roles auf ROLE_*
- Rollenbasierte REST-Regeln
- Security Runbook und Testskripte

Wichtige Dateien:
- containers/keycloak/realm-order-platform.json
- SecurityConfiguration.java
- RealmRoleJwtAuthenticationConverter.java
- scripts/security/

Sinn: Du lernst, Security an den Systemrand zu legen, ohne die Domain mit JWT/OAuth2 zu verschmutzen.

Phase 4: Testcontainers/E2E

PostgreSQL, RabbitMQ, WireMock und Security-Teststruktur.

Kerninhalte:
- RealSystemTestEnvironment
- PostgreSQLContainer und RabbitMQContainer
- WireMock-Mappings fuer Provider-Vertraege
- Maven Failsafe fuer *IT.java
- E2E Runbook

Wichtige Dateien:
- maven-project/integration-tests/
- docs/testing/testcontainers-e2e-strategy.html
- docs/runbooks/phase4-e2e-tests.html

Sinn: Du kannst kritische Integrationsrisiken mit echten Infrastrukturprozessen sichtbar machen.

Phase 5: Observability

Metriken, Health Checks, Prometheus, Grafana und Alerts.

Kerninhalte:
- BusinessMetrics
- OutboxHealthIndicator
- OutboxMetricsBinder
- Correlation-ID Filter
- Prometheus Alert Rules
- Grafana Dashboard

Wichtige Dateien:
- containers/prometheus/
- containers/grafana/
- docs/observability/
- scripts/observability/

Sinn: Du verstehst, wie technische und fachliche Signale fuer Betrieb und Fehlersuche sichtbar werden.

Phase 6: Resilience

Timeout, Retry, Circuit Breaker, Bulkhead und Rate Limit.

Kerninhalte:
- ResilientPaymentGateway als Decorator
- Timeout/Retry/Circuit Breaker
- Bulkhead und Rate-Limiting
- stabile Fehlerantworten
- Fehlerfall-Runbooks

Wichtige Dateien:
- docs/resilience/
- scripts/resilience/
- containers/wiremock/mappings/

Sinn: Du lernst, dass Produktionsreife auch bedeutet, kontrolliert und nachvollziehbar zu scheitern.

Phase 7: CI/CD Quality Gates

Maven Verify, Tests, SBOM, Lizenzpruefung, Security Scan und Docker Build.

Kerninhalte:
- GitHub Actions Pipeline
- Maven Verify Gate
- Dependency Review
- CycloneDX SBOM
- Lizenzbericht
- Docker Runtime Build

Wichtige Dateien:
- .github/workflows/ci.yml
- scripts/quality/
- docs/cicd/

Sinn: Du lernst, welche Gates verhindern, dass instabile oder rechtlich problematische Releases entstehen.

Phase 8: Deployment Profile

Dockerfile, Kubernetes, OpenShift, Kustomize und Helm.

Kerninhalte:
- Runtime Dockerfile
- Kubernetes Base Manifeste
- Kustomize Overlays
- OpenShift Route und Security Context
- Helm Chart

Wichtige Dateien:
- Dockerfile.runtime
- deploy/kubernetes/
- deploy/kustomize/
- deploy/helm/

Sinn: Du siehst, wie derselbe Service lokal, in Kubernetes und in OpenShift deploybar wird.

Phase 9: Datenbankbetrieb

Backup, Restore, Migration, Seed-Daten, Views und Retention.

Kerninhalte:
- pg_dump/Restore Skripte
- Flyway History Check
- Outbox Backlog Check
- Seed-Daten
- Reporting Views
- Retention SQL

Wichtige Dateien:
- scripts/database/
- database/
- docs/database/
- docs/runbooks/backup-restore.html

Sinn: Du lernst, dass Datenbankbetrieb ein eigener Betriebsprozess ist und nicht nur Schema-Erstellung.

Phase 10: Produktionsreife

Disaster Recovery, Incident Response, SLO/SLA, Kostenmodell und Checklisten.

Kerninhalte:
- DR-Konzept
- Incident Response Runbook
- SLO/SLA-Modell
- Betriebsrollen
- Kostenmodell
- Produktionschecklisten

Wichtige Dateien:
- docs/operations/
- docs/runbooks/incident-response.html
- berichte/finale-release-notes.html

Sinn: Du rundest das Lab als Schulungspaket ab und verbindest Architektur mit Betrieb, Verantwortung und Kosten.