[asterisk-dev] Asterisk modules in C++

Deepesh D deep.d2010 at gmail.com
Sun May 9 12:03:28 CDT 2010


The AGI does some database lookups and based on the results sets some
dialplan variables. In the dialplan the call is routed to different
extensions based on the value of these variables. The database I use
is postgresql. The AGI uses libpq++ (postgresql's C++ interface) to
connect with database.

On Sun, May 9, 2010 at 9:09 PM, Steve Edwards <asterisk.org at sedwards.com> wrote:
> On Sun, 9 May 2010, Deepesh D wrote:
>
>> Performance is the main reason for switching from AGI to module. Will a
>> FastAGI running on the same server as asterisk give me improved
>> performance?
>
> Yes.
>
> If your AGI, FastAGI, or module are all written in c[++], the code that
> implements your logic will execute at the same speed.
>
> If implementing your code as a module allows you to access internal
> Asterisk data or code more efficiently, it may improve performance. But
> implementing a module will be far more expensive (in $$$) over the life of
> the project.
>
> While creating a new process is typically a very "expensive" (in CPU
> resources) process, any reasonably modern processor can create hundreds of
> processes per second.
>
> Before switching to FastAGI, why do you think process creation is the
> limiting factor in your quest for improved performance?
>
> How about some details about exactly what you are doing and what your AGIs
> are doing?
>
> --
> Thanks in advance,
> -------------------------------------------------------------------------
> Steve Edwards       sedwards at sedwards.com      Voice: +1-760-468-3867 PST
> Newline                                              Fax: +1-760-731-3000
>
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev
>



More information about the asterisk-dev mailing list