 | [Asterisk] Dialplan sizeI needed to create a large dialplan for Asterisk and wondered how large a plan Asterisk could support.
I ended up with a plan that runs to 85000 lines and thought nothing ventured nothing gained. It turns out that Asterisk takes about 30 seconds to process dialplan reload, but once loaded processes a number using dialplan show number@context almost instantly.
I'm impressed.
-- DPC3825 (bridged mode) - WRT610N + Tomato - Panasonic KX-TGP500 - Asterisk 1.8.10.1 on Virtual Server Anveo - FreePhoneLine - Voxbeam - Numbergroup - Callcentric - VoIP.MS - Localphone - UKDDI |
|
|
|
 Mangowww.toao.net join:2008-12-25 Alberta kudos:11 Reviews:
·Anveo
·Shaw
·AcroVoice
·Callcentric
·callwithus
·voip.ms
·FreePhoneLine
·TELUS
| said by grand total:I ended up with a plan that runs to 85000 lines »tinyurl.com/a6qy8yj |
|
 Reviews:
·voip.ms
·igs.net
·TekSavvy DSL
| reply to grand total I'm using Asterisk 11.2.1 and from the extensions.conf sample:
; If extenpatternmatchnew is set (true, yes, etc), then a new algorithm that uses ; a Trie to find the best matching pattern is used. In dialplans ; with more than about 20-40 extensions in a single context, this ; new algorithm can provide a noticeable speedup. ; With 50 extensions, the speedup is 1.32x ; with 88 extensions, the speedup is 2.23x ; with 138 extensions, the speedup is 3.44x ; with 238 extensions, the speedup is 5.8x ; with 438 extensions, the speedup is 10.4x ; With 1000 extensions, the speedup is ~25x ; with 10,000 extensions, the speedup is 374x ; Basically, the new algorithm provides a flat response ; time, no matter the number of extensions. ; ; By default, the old pattern matcher is used. ; ; ****This is a new feature! ********************* ; The new pattern matcher is for the brave, the bold, and ; the desperate. If you have large dialplans (more than about 50 extensions ; in a context), and/or high call volume, you might consider setting ; this value to "yes" !! ; Please, if you try this out, and are forced to return to the ; old pattern matcher, please report your reasons in a bug report ; on »issues.asterisk.org. We have made good progress in providing ; something compatible with the old matcher; help us finish the job! ; ; This value can be switched at runtime using the cli command "dialplan set extenpatternma tchnew true" ; or "dialplan set extenpatternmatchnew false", so you can experiment to your hearts conte nt. ; ;extenpatternmatchnew=no So I would expect it can handle a very large number of extensions pretty efficiently. |
|
 | said by JeanInNepean:I'm using Asterisk 11.2.1 and from the extensions.conf sample: ; ****This is a new feature! ********************* ; The new pattern matcher is for the brave, the bold, and ; the desperate. If you have large dialplans (more than about 50 extensions ; in a context), and/or high call volume, you might consider setting ; this value to "yes" !! So I would expect it can handle a very large number of extensions pretty efficiently. Thanks for the reminder, I remember reading that a while ago, but I had forgotten it. I have approximately 17,000 extensions and no problem with speed (other than the time taken to reload the dialplan), so I may leave well enough alone. -- DPC3825 (bridged mode) - WRT610N + Tomato - Panasonic KX-TGP500 - Asterisk 1.8.10.1 on Virtual Server Anveo - FreePhoneLine - Voxbeam - Numbergroup - Callcentric - VoIP.MS - Localphone - UKDDI |
|
 MartinMVoIP.msPremium,VIP join:2008-07-21 | reply to grand total Have you considered realtime? You can use a database, such as MySQL and use a switch for extensions.
However, if you don't reload your dialplan often and have no problems keeping the 85,000 lines organized, might as well stick with it. -- Martin - VoiP.ms |
|
 | reply to grand total said by grand total:I ended up with a plan that runs to 85000 lines --- I'm impressed. +1 |
|
 | reply to grand total I've re-written the dialplan to reduce the number of lines to a little over 17,000. Dialplan reload now completes in about 6 seconds. |
|