Default behaviour in implementation of STOMP protocol in RabbitMQ with python

Why STOMP? Why STOMP, and not directly AMQP, as I’m using RabbitMQ. No real reason, but the fact that there are less dependencies on a STOMP client, as it’s just a socket with text sent. Implementations There are several implementations of the STOMP protocol for Python. The module I chose is python-stomp (version 0.2.9), from Benjamin W. Smith. It’s simple and easy to understand. Simple Code Examples sto_send.py: [crayon-5744fc0a1750a551877533/] sto_receive.py: [crayon-5744fc0a17515029960961/] Everything is working fine, when launching sto_receive.py, I receive the message. But when I launched several receivers, I noticed, that ONLY ONE programs received the message! After some research, I found the answer: As documented in the RabbitMQ wiki, the default exchange is ‘direct’: […]when messages leave a queue for a consumer, they are not duplicated. One message, sitting on a queue, is delivered to only one of the available consumers. […] If there are multiple clients, all SUBSCRIBEing ...(Read More)