# Competing Consumers

> Enable multiple concurrent consumers to process messages on the same messaging channel

- **Category**: Cloud
- **Subcategory**: azure
- **Canonical URL**: https://designpattern.fyi/patterns/azure_competing_consumers/

---

## Description
The Competing Consumers pattern enables multiple concurrent consumers to process messages that they receive on the same messaging channel. Messages are delivered to only one consumer, preventing duplicate processing. This increases throughput and scalability by allowing parallel processing of messages.


## Use Cases
Use when you need to increase message processing throughput or when messages can be processed independently and in parallel.





## Trade-offs


### Advantages

- Increased throughput through parallel processing

- Scalable consumer pool

- Load balancing across consumers

- Improved system performance




### Considerations & Drawbacks

- Message ordering not guaranteed

- Requires consumer coordination

- Potential for duplicate message processing







---
**Reference**: [Original Source](https://learn.microsoft.com/en-us/azure/architecture/patterns/competing-consumers)

