Does Asterisk has Limit using text database? (sip/user conf)

Hello all,

Well new to asterisk. I’m trying to to test asterisk to its limits. Well i have some interesting results and many more questions.

I have two scenarios here:

  1. when Config file is loaded with 10,000 extensions.
    a. I register 2000 extensions using SIPp Client /SIPp Server on asterisk and then send the invites
    b I flood asterisk with sip calls (Invite without media). asterisk breaks down* at an impressive number of calls.

  2. when Config file is loaded with 20,000 extensions
    a. I did the same number of registrations this time
    b I flood asterisk with sip calls (invite without media). asterisk breaks down* at a few hundred calls.

  • the calls either timeout/asterisk fails to respond to the incoming calls

My questions here:

  1. Why does asterisk run under as a single process? when compared to other sip proxy like OpenSer, which runs different processes using different service objects which inturn serve the function of sip sessions.
  2. Does really the number of users on the text database decrease the functionality of asterisk?
  3. Does the same occur when a mysql database is loaded?

Gnaneshwar Gatla


Basicly there is a saying that goes like “If your eye hurts when poking it with a pencil, Dont poke it with a pencil”

Asterisk loads the config onto memory, basicly work within the limits, even things like logging level will effect the number of concurrect calls


Asterisk is multi-threaded, so the fact that 2.6 kernel versions of ps, by default, only show the one, is a red-herring. If you really want to see the processes, use the -L option on ps.

Actually, the high level of multi-threading is one of Asterisk’s weaknesses. It results in a lot of locking related bugs.

There isn’t a text database for devices. The text file is read at startup and converted to internal data structures.