We certainly try to keep overhead low especially in the case of memory
since any extra work for the garbage collector hurts performance. However,
I'm not sure I could quantify the overhead exactly. In my opinion the best
way to determine your needs is to run a benchmark. Configure a broker and a
set of clients to mirror your expected production use-cases but at a
smaller scale (e.g. use tens of queues instead of thousands). Then monitor
the broker's resource utilization during your test. Scale up and down to
see how utilization changes. That should give you a good ballpark on what
to expect.

As far as scheduled messages go there will be a new
org.apache.activemq.artemis.core.server.impl.ScheduledDeliveryHandlerImpl.ScheduledDeliveryRunnable
instance for each delivery time. If two (or more) messages share the same
delivery time then there will only be one ScheduledDeliveryRunnable
instance.


Justin

On Tue, Jul 21, 2020 at 1:17 AM Wayne Robinson <wayne.robin...@gmail.com>
wrote:

> Hi Everyone, long time like, first time question.
>
> I’m doing some planning regarding instance RAM/storage costing and was
> wondering what the minimum message overhead would be?
>
> Our messages are only around 40 bytes each (to thousands of queues), but
> was wondering what the overhead of a message in RAM and/or paged to disk
> is? Especially if we disable message ID and timestamp creation.
>
> Also, if we’re using the scheduled delivery feature, what would be the
> extra overhead caused by that?
>
> Cheers
> Wayne
>

Reply via email to