activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Tully <>
Subject Re: How to minimize send() latency for persistent msgs in transacted sessions keeping JMSExceptions synchronuos?
Date Thu, 28 Jan 2010 17:00:37 GMT
If you don't want to use an ExceptionListener then you need to have every
send synced with the broker, so you need alwaysSyncSend.
However, this will give the worst latency so you may want to have a pool of
producers on separate connections so that you can get some parallelism.

If you can live with using an ExceptionListener then the default (asyncSend
for messages in a transaction) will work fine.
Also set copuMsgOnSend=false to save some cycles on each send.

On 28 January 2010 16:47, Fred Moore <> wrote:

> Hi folks,
> we have a fast producer sending persistent messages in transaction and
> committing them every X msgs or Y seconds, our requirements are:
> 1\ ability to minimize the send() latency (and overall performance)
> 2\ ability to detect any JMSExceptions at commit() time (or at send() time)
> and catching them in the producer thread without resorting to using
> ExceptionListeners()... this is to allow us to perform a timely detection
> and management of <systemUsage> related JMSExceptions.
> What is the "golden mix" of these queue connection factory attributes that
> you recommend in this scenario:
> * useAsyncSend
> * alwaysSessionAsync
> * alwaysSyncSend
> * sendAcksAsync
> Cheers,
> F.


Open Source Integration

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message