Fwd: [Asterisk-Users] update - 512 Simultaneous Calls with Digital Recording

Matt Roth mroth at imminc.com
Tue Apr 11 13:19:10 MST 2006


Erick Perez wrote:

>How much RAM disk is needed or are you using for your current needs?
>We're planning to do something like this. But I can't figure proper
>dimensioning.
>
Erick,

We are using Asterisk to handle our inbound call center operations.  
There are currently 158 leg files (produced by 79 concurrent calls) on 
our RAM disk, occupying 5% of the total available space (649 MB out of 
16 GB).

Before extrapolating those numbers out to fit your plans, consider the 
following points:

- All of our calls use the u-Law codec and are recorded in the PCM 
format to minimize the transcoding load on the box.  If you recorded to 
a compressed format you could trade higher CPU utilization for a smaller 
RAM disk.  Likewise, you could use a compressed codec end-to-end on the 
calls, trading call quality for a smaller RAM disk.

- Our RAM disk is dimensioned for 500 concurrent calls, each recorded as 
two PCM leg files.  I believe we did the math for if each of those calls 
ran 45 minutes and added in a fudge factor.  It looks like 250 
concurrent calls is a more realistic number.  Long story short: we're 
overconfigured.

- Overconfiguration has its advantages.  We rely on moving the leg files 
over an NFS mount at the end of each call, so that they can be mixed and 
indexed on a remote server.  If this move were to fail for some reason, 
the leg files would be left on the RAM disk.  The excess space gives us 
a chance to identify and fix the error before it becomes a bigger problem.

- 32-bit processors (without 64-bit extensions, such as Intel EM64T) are 
limited to 4 GB of physical memory.

Your best bet is to take these points into consideration and then sit 
down and do the math.  Figure out the average call length, the average 
number of concurrent calls, and the format you'll be storing them in. 
Remember that when using Monitor() to record calls, each call generates 
TWO leg files.  Consider your plan for moving them to stable storage and 
what will happen if it encounters a problem.
In the end, you'll want to calculate how many minutes of audio you need 
to store, then multiply that by the amount of space required per minute 
by your desired format.  Think about what kind of hardware, OS, and 
application changes you'll need to make if the number is larger than 4 
GB AFTER being added to the amount of memory you want available to the 
rest of the system.  Our 64-bit architecture consists of Dell PowerEdges 
with Intel Xeon processors running Fedora Core 3 x86_64.

The last point also brings up a question.  Does anyone know how 
gracefully Asterisk handles attempting to write leg files to a full disk?

Matthew Roth
InterMedia Marketing Solutions
Software Engineer and Systems Developer



More information about the asterisk-users mailing list