Brand new to rabbitMQ but considering using it as a queuing mechanism in GKE. I have a question that is probably pretty easy.
Is there a way to only process a single message from a user (GUID in my application) at a given time (even if I have multiple workers). Essentially, I have some upstream 3rd parties that POST to one of my endpoints duplicate messages. I can confirm if there is already a duplicate document POSTed if I work syncronously (per user). The issue arises if I have multiple worker nodes processing separate messages for the same user at the same time.
Is this possible in RabbitMQ? Is there a recommended way to handle this? Thank you very much.
This isn't possible with multiple workers consuming from the same queue. Either have a single worker, ensure that processing messages is idempotent, or coordinate between your workers.
NOTE: the RabbitMQ team monitors the rabbitmq-users
mailing list and only sometimes answers questions on StackOverflow.