You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Lasse Lindgård (Jira)" <ji...@apache.org> on 2021/09/30 07:12:00 UTC

[jira] [Created] (ARTEMIS-3507) Smarter batching of acks / Smarter message count

Lasse Lindgård created ARTEMIS-3507:
---------------------------------------

             Summary: Smarter batching of acks / Smarter message count
                 Key: ARTEMIS-3507
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3507
             Project: ActiveMQ Artemis
          Issue Type: Wish
          Components: Broker
    Affects Versions: 2.17.0
            Reporter: Lasse Lindgård


Using the default settings and the CORE api, I create a long running ClientSession, with a MessageHandler.

Now when I consume messages I can see that the message acks are batched and delivered to the broker as configured in ackBatchSize. And the Message Count in the management console are only decreased when the acks are actually sent.

In a low traffic scenario, with long running consumers, that might cause the acks "never" be sent or only to be sent on restarting the services.

I wish that that could be improved somehow. And not by setting ackBatchSize=0. But in some clever way make sure that the acks are sent, even when the traffic is lower.

I am not going to tell you how, but one wish could be that it could be configured timebased, so that acks are sent at least every minute. Or the consumer could be smart about how busy it is and send acks on every message when the message rate is below some number.

Another way to think of this is in terms of user experience. I now understand that the message count includes inflight messages. But I would really like to have one number for inflight and one number for undelivered messages.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)