[asterisk-users] When does Scalability requests Asterisk to U
se SER ?
rushowr at phreaker.net
Wed Sep 20 03:34:22 MST 2006
> good stuff mate.
> a few clarifications:
> you had static "extensions.conf", realtime "sipusers", etc, right?
> Also, abt features like call fwding, etc, which one is better,
> performance wise, using a mysql db, or use Asterisk's internal
> DB(berkeley db, isnt it?using those DBput n DBget ops)??Anyone's got any
> figures for these?
> This somewot spoils the fun in Asterisk, when talking of performance, to
> query the DB for every call . Sort of pulls things down. Any comments or
> observations guys?
> - Ben.
Yes, static extensions.conf, realtime everything else. A realtime
dialplan never made much sense to me, as the dialplan shouldn't (in my
humble opinion) be that fluid anyway, it should be fairly static.
In terms of spoiling the fun and/or performance issues, let me note that
in my current implementation we not only have options being queried but
also realtime billing, permissions, limits, and carrier/trunk
performance data, all being pulled and calculated via the database. I
also have handy little timers returning the length of time it takes to
do the processing from request receipt to dial, and I'm still currently
under 1-2 seconds for entire call preparation including all the logic
that goes along with checking all features, the current account's
account status, balance and limits, AND all parent accounts in it's
"billing chain". I haven't done a head to head with the berkley DB, but
I think part of the reason it's so fast is due to the highly normalized
database structure, which allows for efficient query design. It's not
all third form, but almost there :D.
I'm in the last days of ALPHA now with my current project. Once we
launch BETA, which will be a semi-public testing by invitation (Murph,
you still going to participate?), I should be able to find a few minutes
to outline the design.
One other quick thing, the berkley DB doesn't allow for clustering
either, MySQL does. Very nice to have your database distributed across
multiple nodes, makes for an easier time designing the failovers :D
More information about the asterisk-users