activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <james.strac...@gmail.com>
Subject Re: Stomp Client Hoarding Messages
Date Wed, 22 Oct 2008 10:10:31 GMT
2008/10/22 logictude <andrew@logictude.com>:
>
> Here's the nutshell:
>
> I have AMQ (v5.1.0) running great and my clients subscribe just fine. At
> this moment I have between two and three clients connected to AMQ (queue,
> FYI, not topic).
>
> Each client reads incoming messages and checks for a keyword against the DB.
> When a client does find a match it sends a simple ACK frame back to the
> broker and everything is great. When there ISN'T a match, the client holds
> onto the message - because there's no ACK sent back - and never releases the
> message for any other client to consumer/taste/confirm.

FWIW this isn't a good way of using messaging; you should ideally only
consume messages that you can actually process. e.g. using a selector
or queue naming strategy or something

> Is there a way to drop (NO-ACK) the message so another client can pick it
> up?

Yes, use transactions and rollback.

Though I think a better solution would be to try to only consume
messages you can process. If noone can process the messages for any
reason, consume the message but send some kind of 'match failed'
message to another queue

-- 
James
-------
http://macstrac.blogspot.com/

Open Source Integration
http://fusesource.com/

Mime
View raw message