Skip to content
This repository has been archived by the owner on Jul 21, 2023. It is now read-only.

Competiting Comsumers #96

Closed
Calidus opened this issue Jun 18, 2020 · 1 comment
Closed

Competiting Comsumers #96

Calidus opened this issue Jun 18, 2020 · 1 comment
Labels

Comments

@Calidus
Copy link
Contributor

Calidus commented Jun 18, 2020

There is no out of box support for competing consumers right? Options seem to be:

  • Make work manager service that subscribes to a queue and divides up messages between workers
  • Abuse routing key feature, and partition messages as they are generated
  • Make a PR? Add a new QueueType enum, and edit the broker
@danadesrosiers
Copy link
Collaborator

You are correct, there is nothing built in to support this. The first two options you mentioned are definitely available to you now. Partitioning via routing key seems like a good option. I'm not sure I would even consider it abuse.

I can see how having something built in would provide value. Maybe there would be a "subscriberId" on the Subscribe attribute and all subscribers with the same Id would share a queue. We would have to come up with a strategy (or strategies) to govern how messages are distributed across the set of competing subscribers. It would likely require significant work and breaking changes. We're not prepared to take it on right now. If you really want to pursue this feature, we would ask that you put together a proposal for how it would be implemented. When we have a plan that we are all happy with, we would then give you the green light to begin a PR.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

2 participants