[rabbitmq-discuss] [PATCH] Add exclusive queue support to stomp adaptor

Steve Powell steve at rabbitmq.com
Mon Mar 26 14:09:26 BST 2012


Hi Jeff,

The STOMP protocol itself doesn't have the notion of a queue, exclusive
or otherwise. Rather it talks about *destinations*. Sometimes there is a
queue associated with a destination, sometimes not.

In RabbitMQ's implementation of a STOMP subscription, the format of the
destination determines whether there is a queue, what it might be
called, and whether it is created exclusive or not to this client.
Subscriptions to Topic destinations, for example, are associated with
exclusive queues, created for each subscriber. Subscriptions to simple
queue destinations create a shared queue (of an appropriate name) mainly
because we are expecting some other STOMP client to SEND to it (or it
might already have sent to it); making it exclusive would prevent other
clients from seeing it and thus defeat the object.

What we cannot understand is why you would want to change the normal
exclusive/shared characteristic of a queue we might create from the
default? Can you explain why you might want this feature?

Steve Powell  (a puzzled bunny)
----------some more definitions from the SPD----------
chinchilla (n.) Cooling device for the lower jaw.
socialcast (n.) Someone to whom everyone is speaking but nobody likes.
literacy (n.) A textually transmitted disease usually contracted in childhood.

On 23 Mar 2012, at 12:31, Steve Powell wrote:

> Thanks for the patch Jeff,
> 
> We are evaluating this.
> 
> Steve Powell  (a happy bunny)
> ----------some more definitions from the SPD----------
> chinchilla (n.) Cooling device for the lower jaw.
> socialcast (n.) Someone to whom everyone is speaking but nobody likes.
> literacy (n.) A textually transmitted disease usually contracted in childhood.
> 
> On 21 Mar 2012, at 17:24, Jeff wrote:
> 
>> this is a very small patch to add exclusive-access support to a queue when accessed via the stomp adaptor.  It is enabled by using the "exclusive" header.
>> 
>> If you are using Net::Stomp your subscribe would look like 
>> 
>> $stomp->subscribe({ "destination" => "/amq/queue/test",
>> 						"ack" => "auto", 
>> 						"exclusive" => "true"
>> 				 }));
>> 
>> 
>> <rabbit-2.7.1-exclusive-stomp.diff>
>> 
>> --
>> Jeff Trout <jeff at jefftrout.com>
>> http://www.stuarthamm.net/
>> http://www.dellsmartexitin.com/
>> 
>> 
>> 
>> _______________________________________________
>> rabbitmq-discuss mailing list
>> rabbitmq-discuss at lists.rabbitmq.com
>> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
> 
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss



More information about the rabbitmq-discuss mailing list