Asterisk in Realtime - Best use of it

I am using ARA with PHP-AGI on one serverA and on the other serverB everything is same but instead of using AGI I am using the same dialplan querying MySQL from Asterisk with func odbc

Server B has a drastic change in performance

ServerA performance -> handling upto 100 calls simultaneously with no issues
ServerB performance -> handling more than 500 calls simultaneously with no issues

So which is the best way or is there an issue with AGI?

Please suggest.

AGI needs to launch a new process so it is expected that an AGI handling call would consume a bit more resources than dialplan processing the same call.

–Satish Barot

1 Like

Thanks @satish4asterisk but I dont think that AGI will decrease 10X performance as many other opensource uses the AGI only I guess.

Any comments?

Yes it shouldn’t decrease by 10X but it all depends on what you are doing in AGI.
You should start with a very basic stuffs in AGI and then starting adding new features to see where it consumes more resources.

Ok, as of now I have 10 AGI files, if I combined all into 1 AGI then will performance increase?

Ideally yes it should improve the performance.

Thanks, and if i migrate the DB from remote server to local machine where AGI is running so will that also improve the performance?