Suggest an editImprove this articleRefine the answer for “How does EDA differ from request-response architecture?”. Your changes go to moderation before they’re published.Approval requiredContentWhat you’re changing🇺🇸EN🇺🇦UAPreviewTitle (EN)Short answer (EN)EDA and request-response architecture are two different approaches to service interaction: in request-response a service makes a request and waits for a response, while in EDA a service publishes an event and subscribers react to it asynchronously. **Key point:** request-response is a point-to-point synchronous dialogue, while EDA is a stream of asynchronous events, where services react to changes without depending on each other.Shown above the full answer for quick recall.Answer (EN)ImageEDA (event-driven architecture) and request-response architecture are two different approaches to service interaction. They differ in the direction of communication, synchronicity, and the degree of component dependency. ### 1. **Interaction principle** | Approach | Essence | |---|---| | **Request-Response** | One service makes a request to another and **waits for a response** (for example, HTTP REST or gRPC). | | **EDA** | A service **publishes an event**, and other subscribers **react** to it asynchronously, without waiting. | *Example:* - Request-Response → the "Orders" service calls "Payments" and waits for confirmation. - EDA → the "Orders" service publishes the "OrderCreated" event, and "Payments" processes it on its own. ### 2. **Type of connection** - **Request-Response:** tight coupling: a service must know the address and contract of the other. - **EDA:** loose coupling: the publisher does not know its subscribers, the connection goes through a message broker. ### 3. **Synchronicity** - **Request-Response:** synchronous: the calling service blocks until it gets a response. - **EDA:** asynchronous: everything works independently and in parallel. ### 4. **Scaling and fault tolerance** - Request-Response is harder to scale: a failure in one node drags a chain of errors along. - EDA scales more easily: the broker buffers events, and services process them at their own pace. ### 5. **Use cases** - **Request-Response:** for direct, critical requests ("get profile", "create order"). - **EDA:** for event-driven reactions ("payment completed", "item delivered"). **Summary:** > **Request-Response** is a point-to-point, synchronous dialogue between services. > **EDA** is a stream of asynchronous events, where services react to changes without depending on each other.For the reviewerNote to the moderator (optional)Visible only to the moderator. Helps review go faster.