2.5 KiB
2.5 KiB
Modul-02-RabbitMQ — Betriebsdokumentation
Erstellt: 20.08.2026 (Rain Ocampo) · Status: ✅ In Betrieb (healthy)
Zweck
Zentrale Event-Bus / Message-Queue des Trading-Systems. Verteilte Kommunikation zwischen den Modulen über Topics/Exchanges. Keine Strategie, keine Orders — nur zuverlässige Nachrichtenvermittlung.
Container
| Attribut | Wert |
|---|---|
| Name | Modul-02-RabbitMQ |
| Image | rabbitmq:3-management (RMQ 3.13.7) |
| Ports | 55672 (AMQP, Host) / 15672 (Management-UI, Host) — beide nur intern |
| Netzwerk | trading-modules (bridge) |
| IP (intern) | 10.0.13.7 |
| Restart | unless-stopped |
| Status | ✅ healthy |
Credentials (Compose Env)
| Variable | Wert (Default) | Zweck |
|---|---|---|
RABBITMQ_DEFAULT_VHOST |
trading |
Default-vhost trading (wichtig!) |
RABBITMQ_DEFAULT_USER |
trading |
Default-User |
RABBITMQ_DEFAULT_PASS |
trading |
aus .env-Defaults ${VAR:-default} |
Konfiguration
- Image:
rabbitmq:3-management(inkl. Management-Plugin für UI/Diagnose) - Docker-interner Servicename:
Modul-02-RabbitMQ(von anderen Modulen so referenziert, keine feste IP) - AMQP-Port intern: 5672 (Host: 55672)
- Management-Port intern: 15672 (Host: 15672)
- vhost
trading— alle Trading-Module nutzen diesen Vhost
Exchanges & Routing-Keys
Siehe modul-03-market-data.md → Exchange market.data (topic, durable).
| Routing-Key | Event-Typ | Wann |
|---|---|---|
market.data.ready |
MARKET_DATA_READY |
Batch/Import — EIN Event pro Batch |
market.data.candle.closed |
MARKET_CANDLE_CLOSED |
Live — pro abgeschlossener Kerze |
- Eventschema v1.0:
event_id, event_type, event_version, timestamp, symbol, asset_class, timeframe, provider+ payload.
Verbraucher/Produzenten
- Produzent: Modul-03-Market-Data (publiziert
market.data.*) - Konsumenten: Modul-04 ff. (Market Regime, Strategy Engine, Signal Ranking, …) — siehe jeweilige Modul-Doku
- Consumer-Regel:
queue_deletebeim Start gegen Zombies (alte, hängende Consumer-Queues entfernen)
Sicherheit
- Creds nur via Environment Variables / Docker-Secrets (Compose
${VAR:-default}), nie in Doku-Repos hartkodiert - Ports 55672/15672 nur intern — kein unnötig öffentlicher Port
Geändert von: Rain Ocampo
Datum: 20.08.2026
Grund: Modul-02-Dokumentation nachgetragen (lief bereits produktiv, fehlte in Repo).