You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by Brian <br...@cs.toronto.edu> on 2021/03/02 22:19:50 UTC

JMX management vs broker.xml startup performance

Hi,

I have a question about the broker internals.

Currently I am creating queues, addresses, diverts using the Java jmx api, after the broker has started. I noticed that if I instead predefine these configurations using the broker.xml before the startup phase, the initial latencies on the messages for the first 30 seconds are much lower. 

I am wondering if this is due to the jvm doing AOT on the queues when it’s predefined in the broker.xml or some other optimization as compared to creating everything using the management api.

Any information on this is appreciated.


Thanks
Brian R

Re: JMX management vs broker.xml startup performance

Posted by Matt Pavlovich <ma...@gmail.com>.
Sounds like Artemis, right?  “broker.xml” “Diverts” “Addresses” are usually Artemis terms.

As Clebert suggested— sounds like a bootstrapping or warm-up type deal.

> On Mar 4, 2021, at 11:00 AM, Clebert Suconic <cl...@gmail.com> wrote:
> 
> I'm not sure if you're using Artemis or ActiveMQ, but in either case
> it should be the same.
> 
> The only difference I would say is the classes would be loaded earlier...
> 
> To do a proper test, I would suggest you allow some time between you
> creating the queues and actually injecting load.
> 
> On Tue, Mar 2, 2021 at 5:20 PM Brian <br...@cs.toronto.edu> wrote:
>> 
>> Hi,
>> 
>> I have a question about the broker internals.
>> 
>> Currently I am creating queues, addresses, diverts using the Java jmx api, after the broker has started. I noticed that if I instead predefine these configurations using the broker.xml before the startup phase, the initial latencies on the messages for the first 30 seconds are much lower.
>> 
>> I am wondering if this is due to the jvm doing AOT on the queues when it’s predefined in the broker.xml or some other optimization as compared to creating everything using the management api.
>> 
>> Any information on this is appreciated.
>> 
>> 
>> Thanks
>> Brian R
> 
> 
> 
> -- 
> Clebert Suconic


Re: JMX management vs broker.xml startup performance

Posted by Clebert Suconic <cl...@gmail.com>.
I'm not sure if you're using Artemis or ActiveMQ, but in either case
it should be the same.

The only difference I would say is the classes would be loaded earlier...

To do a proper test, I would suggest you allow some time between you
creating the queues and actually injecting load.

On Tue, Mar 2, 2021 at 5:20 PM Brian <br...@cs.toronto.edu> wrote:
>
> Hi,
>
> I have a question about the broker internals.
>
> Currently I am creating queues, addresses, diverts using the Java jmx api, after the broker has started. I noticed that if I instead predefine these configurations using the broker.xml before the startup phase, the initial latencies on the messages for the first 30 seconds are much lower.
>
> I am wondering if this is due to the jvm doing AOT on the queues when it’s predefined in the broker.xml or some other optimization as compared to creating everything using the management api.
>
> Any information on this is appreciated.
>
>
> Thanks
> Brian R



-- 
Clebert Suconic