Scaling Voicemail
(I sent this previously, but my list membership was still processing so I don’t think it made its way out, apologies if it did!)
Hi all,
I’m building a voicemail system using Asterisk, with pjsip, and IMAP. I used to do a lot of Asterisk, but, catching up after a few years away.
We have existing voice infrastructure using Kamailio, registrations go there, not to Asterisk.
Functionality is mostly fine. Problem I’m having is scaling. I’m just testing stuff right now, and dumped in around 3500 mocked up voicemail users, and found that startup times and so on are quite long.
I’m wondering:
1) Is there a way to avoid defining an endpoint + AOR for each user, while retaining the ability to poll mailboxes, and sent NOTIFYs to users? I was hoping that I could at least define a generic AOR for our Kamailio server, however, there doesn’t seem to be a way to set the RURI and To: user on a per-endpoint basis for the MWI notifications, so the NOTIFYs go out with the RURI/To: set to a generic URI (which is something like sip:kamailio_ip:5060
2) Is there a way to spread mailbox polling out? All the mailboxes are checked at once, which means we get big load spikes, including at startup. It’d be great to have this spread out over time.
3) Does anyone have thoughts/ideas re. scaling an Asterisk voicemail-only server? Can it be done while retaining mailbox polling with the current infrastructure?
FWIW, I’m running 14.7.7, though that can easily be changed if there’s a better version to target for this.