Aggregate multiple individual requests into a single request.
When to use this pattern?
The client needs to communicate with multiple backend services to perform an operation.
The client may use networks with significant latency, such as mobile networks.
When you should NOT to use this pattern?
You want to reduce the number of calls between a client and a single service across multiple operations. It’s better to add batch operation to the service.
The client or application is located near the backend services and latency is not a significant factor.
Considerations
Backend service
coupling
Latency
Single point of failure
Performance bottleneck
Load testing
Resilience (Bulkhead, retry…)
Partial data return
Asynchronous I/O
Distributed tracing
Monitor request and response
Return cached data as failover strategy