<div class="gmail_quote">On Tue, Jun 9, 2009 at 1:09 AM, Matthias Radestock <span dir="ltr"><<a href="mailto:matthias@lshift.net">matthias@lshift.net</a>></span> wrote:</div><div class="gmail_quote"><br></div><div class="gmail_quote">
Please take this in context in that I am migrating a large scale ActiveMQ install using STOMP to RabbitMQ and am looking to mirror default behaviors. That being said, I've changing the default behaviors in the stomp connector when I download it so that I get the behaviors I need by default.</div>
<div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
The default behaviour of the current implementation of the RabbitMQ<br>
STOMP adapter<br>
<br>
1) routes messages to one consumer (round-robin) - this can be changed<br>
to 'all' by specifying appropriate 'exchange' and 'routing_key' headers</blockquote><div><br></div><div>+1 This is good. </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
2) does not queue messages when there are no subscribers - this can be<br>
changed by specifying an 'auto-delete = false' header (though that does<br>
require at least one SUBSCRIBE to start with)</blockquote><div><br></div><div>I change this auto-delete = false in the code before compilation to mirror ActiveMQ behavior.</div><div><br></div><div> 3) sends only one copy of a message to a client in the event the client</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
has more than one subscription for the same destination - this can be<br>
changed by specifying appropriate 'exchange' and 'routing_key' headers</blockquote><div><br></div><div>+1 This makes sense.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Should the default behaviour be different? And why?</blockquote><div><br></div><div>The only other oddity is the durable consumer. Coming from an ActiveMQ world, this is more of a server side setting than a header packet setting. </div>
<div><br></div><div>For what it's worth is the biggest issue I had to overcome (other than the client issues) was the concept that one has to subscribe to a queue in order to set the default behavior for it. Our workflow has apps enqueueing all over the place and a limited set of consumers that can be restarted or down for small periods of time. The natural flow for us is to start enqueueing then add consumers that subscribe, not the other way around. If the queue behavior can be set when messages are sent, it would make things easier to grok. Even more ideal would be to set defaults by exchange, but that probably is more work than is reasonably obtained, compared to just changing defaults.</div>
<div><br></div><div>Regards,</div><div><br></div><div>Gavin</div><div> </div></div>