-
1. Re: Scheduled messages and memory consumption
ataylor Dec 18, 2013 4:57 AM (in response to grossetieg)1 of 1 people found this helpfulscheduled messages are handled no different to non scheduled messages with regard to memory consumption as any paging, blocking or dropping of messages is done at routing time.
-
2. Re: Scheduled messages and memory consumption
grossetieg Dec 19, 2013 4:05 AM (in response to ataylor)Hi Andy,
Thanks for your reply.
I will adjust addresses settings and do some more testing
So at the routing time, if the <max-size-bytes> is exceeded the scheduled message will be paged ? But is ScheduledDeliveryHandlerImpl#runnables attribute will contains all scheduled messages or just scheduled messages "in memory" (I paged to disk) ?
Cheers,
Guillaume.
-
3. Re: Scheduled messages and memory consumption
clebert.suconic Dec 19, 2013 10:34 AM (in response to grossetieg)1 of 1 people found this helpfulThe Runnables don't contain any references.. they are just scheduling Queue.deliver and scanning over the scheduled references.
This was much improved on 2.4.0.Final BTW. Now we only schedule if there aren't any runnable scheduled at the same time you're scheduling. That way if you have 1000 messages scheduled to be delivered in 10 seconds, you will only have one runnable at 2.4.0.
-
4. Re: Scheduled messages and memory consumption
clebert.suconic Dec 19, 2013 12:23 PM (in response to clebert.suconic)BTW: Scheduling with paging... we schedule as we depage and memory frees up.
If you have an address with only scheduled, it should be ok.
If you have a redelivery, it will be scheduled right away. In case of restart the redelivery will be on the beggining of the available messages, so it should be ok as well.
There could be some miss use where scheduled messages would take a while to be delivered. (One I could think is... Say if you have 1 million messages scheduled for 2 days from ... and than 1 million messages to be delivered now).. you won't deliver any messages for 2 days on that case. for regular uses this shouldn't be any problem.