I am new to Rabbit and I need some help with a design issue.
We work with several customers and we would like to make a queue for each customer to process each one individually and allow for the order of operations to persits on a account basis.
This way we can prevent the impact of long tasks on other queues and allow for other tasks on other accounts to keep flowing normally via the non busy consumers.
However I believe there is a very big problem in my thinking as there is no way to consume multiple queues in a pattern format like a regex, and doing it for a list does not seem to work as users can be added and removed while all this is active.
My biggest worry about dropping this on a queue is the order of operation, as with multiple consumers, we can no longer guarantee for example that the first operation for customer 1 , happened and only then the second operation happen.
Could you guys help me find where is my mistake?
BTW I have checked Consistent hashing and topics, however I do not believe they help in the issue as the oder of messages for a specific customer cannot be guaranteed.
I expected a form of consuming from all my queues or a set of them without individually programmatically having to handle it.
Our objective is to guarantee the order at the customer / tenant level