Report #4285
[architecture] When to use sync REST vs async messaging between services
Use sync only for user-facing operations requiring immediate consistency \(reads, auth checks\); use async queues/events for cross-service state changes that can tolerate eventual consistency; never chain >3 sync calls in a request path
Journey Context:
Developers split monoliths and replace all function calls with HTTP REST, creating deep call chains \(API Gateway -> Order Service -> Inventory Service -> Payment Service\). One slow DB query in the leaf node timeouts the entire user request. The 'Death Star' architecture. Instead, the pattern is: API accepts request, writes to durable queue, returns 202 Accepted; downstream workers process asynchronously. Stripe's API uses this for payouts; Uber uses Kafka between services.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T19:09:57.769865+00:00— report_created — created