[rabbitmq-discuss] STOMP & AMPQ
Lionel Cons
lionel.cons at cern.ch
Thu Feb 11 07:36:14 GMT 2010
First of all, I've tried to use the RabbitMQ STOMP gateway and it
worked flawlessly.
This said, the way it works (see for instance the topic example in
http://dev.rabbitmq.com/wiki/StompGateway#section_2) looks like
bricolage to me.
As an illustration, using my Net::STOMP Perl module, a topic
subscription in ActiveMQ would look like:
$stomp->subscribe(destination => "/topic/some.test");
but in RabbitMQ you would have to write:
$some_test_id = $stomp->uuid();
$stomp->subscribe(
destination => "",
exchange => "amq.topic",
routing_key => "some.test"
id => $some_test_id,
);
Several different brokers support STOMP but unfortunately it is very
hard to write broker independent code on top of STOMP.
Coming back to AMQP, since objects could be created dynamically via a
simple STOMP SUBSCRIBE frame, it would be good to be able to control
some attributes _explicitly_ rather than relying on hacks like
"destination:" to create a private queue. FWIW, similar hacks exist
also outside the AMQP world, like "destination:/temp-queue/foo" in
ActiveMQ.
In any case AMQP 1-0 will require a change of the STOMP gateway to
expose the new nodes, links, filters... Time for a clean mapping
between AMQP and STOMP?
Cheers,
__________________________________________________________
Lionel Cons http://cern.ch/lionel.cons
CERN http://cern.ch
More information about the rabbitmq-discuss
mailing list