This sounds like what we want.  I did a quick test using what you suggested 
below and it worked as expected.

Thank you again for your time.
Trina

-----Original Message-----
From: Gordon Sim [mailto:[email protected]] 
Sent: Wednesday, November 02, 2011 9:10 AM
To: [email protected]
Subject: Re: ring queues

On 11/02/2011 03:53 PM, Wisler, Trina wrote:
> That is very interesting.  I was not aware of this behavior.  We are using 
> all default setting for everything other than trying to implement the ring 
> queues for the declareQueue call (again, very simple example just trying to 
> test behavior).
>
> Thank you for your replies.  I am interested in this buffering behavior in 
> terms of buffering limits (how many messages get buffered, if there are 
> setting that I can change that would affect this, etc.).

If you are able to switch to the qpid::messaging API, that is in my view 
much simpler and more powerful. (For an overview have a look at the 
guide: http://qpid.apache.org/books/0.12/Programming-In-Apache-Qpid/).

However, even in the qpid::client API you can control the in-flow of 
messages for your subscription.

Have a look at SubscriptionSettings, and instance of which can be passed 
to the SubscriptionManager::subscribe() call. You can set a prefetch 
window, and this will restrict the number of messages that the broker 
will deliver ahead of those that you actually process.

E.g.

  subMgr.subscribe(listener, "my-queue", 
SubscriptionSettings(FlowControl::messageWindow(10)));

which would set a prefetch of 10 messages.

In your experiment this would still mean you could receive up to twenty 
messages as 10 could be prefetched while you were not processing them. 
If you need to not receive any without cancelling the subscription you 
can start with a window of 0 or you can call Session::messageStop() 
passing in the name of your subscription (Subscription::getName()). You 
can use the Subscription::setFlowControl() to reopen the window.

Hope this helps.

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to