STOMP message acknowledgement blocks with high server load

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

STOMP message acknowledgement blocks with high server load

mjustin_de
Hello,

with ActiveMQ 5.9.0, a STOMP client which continuously sends small
non-persistent messages to a topic destination from one thread and
consumes these messages from a second thread.
(The threads use separate connection objects.)

* with ack mode 'auto', sending and receiving continuously runs with
high transfer rates.

* with ack mode 'client', after around 2000 to 5000 messages have been
sent the broker blocks when the consumer sends the ACK frame, and the
client runs into a send time-out.

I have run the same application with the current Apollo 1.6 release, the
problem is not reproducible here, with ack mode 'client', sending ACK
frames never blocks. With ActiveMQ it is always reproducible.

Should I report this is in the issue tracker (currently the code is in
Delphi but I could write a Java test case).

Regards
--
Michael Justin
habarisoft - Enterprise Messaging Software for Delphi
http://www.habarisoft.com/
Reply | Threaded
Open this post in threaded view
|

Re: STOMP message acknowledgement blocks with high server load

gtully
If you can make a little junit test case that can reproduced then please
raise an issue. The stomp unit tests use a simple java client. Peek at the
source for the stomp module tests for inspiration. Thanks
On 14 Mar 2014 09:41, "Michael Justin" <[hidden email]> wrote:

> Hello,
>
> with ActiveMQ 5.9.0, a STOMP client which continuously sends small
> non-persistent messages to a topic destination from one thread and consumes
> these messages from a second thread.
> (The threads use separate connection objects.)
>
> * with ack mode 'auto', sending and receiving continuously runs with high
> transfer rates.
>
> * with ack mode 'client', after around 2000 to 5000 messages have been
> sent the broker blocks when the consumer sends the ACK frame, and the
> client runs into a send time-out.
>
> I have run the same application with the current Apollo 1.6 release, the
> problem is not reproducible here, with ack mode 'client', sending ACK
> frames never blocks. With ActiveMQ it is always reproducible.
>
> Should I report this is in the issue tracker (currently the code is in
> Delphi but I could write a Java test case).
>
> Regards
> --
> Michael Justin
> habarisoft - Enterprise Messaging Software for Delphi
> http://www.habarisoft.com/
>
Reply | Threaded
Open this post in threaded view
|

Re: STOMP message acknowledgement blocks with high server load

mjustin_de
I have created  and attached the JUnit test case class (StompLoadTestWithAck).

Server stops accepting ACK frames


Regards,
Michael Justin