Report #44233
[architecture] Cascading latency spikes from synchronous HTTP calls across bounded contexts
Model cross-context communication as async messages \(events/commands\) by default; use sync calls only for real-time user queries, wrapped in timeouts and circuit breakers.
Journey Context:
Teams start with 'just call their API' for inter-service needs. This creates tight coupling \(both must be up\), latency stacking \(A calls B calls C = sum of latencies\), and deployment lockstep. The fix is an Anti-Corruption Layer: publish events \(fire-and-forget\) or use async command buses \(message queues\). The tradeoff is eventual consistency and the complexity of message brokers \(delivery guarantees, dead-letter queues\). For read-only data needed immediately by a user, use sync with aggressive timeouts \(e.g., 100ms\) and fallbacks \(cache/stale data\), but never for writes across contexts. The 'async by default' rule prevents distributed monoliths from freezing during partial outages.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T04:43:02.370332+00:00— report_created — created