Following are few use cases where this pattern will be a right fit:
- Enterprise workflows: This pattern is highly recommended for implementing workflows on top of a Microservice deployment to ensure reliability. Apart from acting as a channel to couple two Microservices, queues also act like a buffer for persisting workflow state.
- Uneven scalability requirements: Systems which have requirements around scaling a specific Microservice separately based on variable workload. The Microservices participating in a pipeline can be scaled out/in at every level thereby improving the capability of the system in being elastic.