Difference between revisions of "Stress Test 2012-03-05"

From Kolmisoft Wiki
Jump to navigationJump to search
(Created page with '= Used hardware = 3 equal servers: {| border="1" cellpadding="5" cellspacing="0" | CPU: || Intel Core i5-2400 (4 Cores) |- | HDD: || 2x 120 GB SSD (RAID1) |- | RAM: || 16 GB …')
 
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Results =
{| border="1" cellpadding="5" cellspacing="0"
| '''Transcoding G729-G711''' || '''Media Pass-through''' || '''Short Calls (Random 0-300s)''' || '''Reached calls'''
|-
| [[Image:icon_check.png]]|| [[Image:icon_check.png]]||[[Image:icon_check.png]] || ~250
|-
| [[Image:icon_cross.png]]|| [[Image:icon_check.png]]||[[Image:icon_check.png]] || ~500
|-
|[[Image:icon_cross.png]] ||[[Image:icon_cross.png]] ||[[Image:icon_check.png]] || ~1000
|-
| [[Image:icon_cross.png]]|| [[Image:icon_cross.png]]|| [[Image:icon_cross.png]]|| 4599
|-
|}
<br><br>
= Conclusions =
* RAM is not important when sending calls. Maximum usage 2.5 Gb was reached but mainly due to GUI usage (Active Calls and some stats pages)
* CPU is very important - the faster, the better
* SSD disc RAID1 really helped a lot in high CPS (calls per second) sessions
* MySQL service took < 10% at peak times and is not important
* Asterisk service takes major CPU power and is main bottleneck in the long run
* Voice quality degrades at the time of high CPS (high HDD usage)
* 20 CPS reached without problems, if more - Asterisk chokes
* [Comment from Facebook] If you cannot add more CPU power, you can still offload the CPU from transcoding using specialized transcoding cards. Those cards are cheaper than using Digium's G729 licence (10USD each) plus the CPU it needs for the transcoding. If you going to handle 200+ calls go with Xeon CPU(s!). If going to handle 500+ calls, take an addon transcoder cards with the needed channel(licence).
<br><br>
= Used hardware =  
= Used hardware =  


Line 11: Line 40:
|-
|-
| LAN: || 100 Mbps
| LAN: || 100 Mbps
|-
|-  
|}
 
<br><br>
= Setup =
 
Origination server -> Measured Server -> Termination server
 
Audio was send from one server to another playing tt-monkeys file in infinite loop with Playback application.
 
Call was terminated by random timeout 0-300s (and 300-3000s in the last test).
 
One call was always life for testers to hear audio (MOH), to notice when quality degrades.
 
Calls were originated using script which generates call files in batches (5-10-20-50-100).
 
Destination was random in a format XXXXXXXXXX, where X in [0..9]
 
<br><br>
 
= Screenshots=
 
Press on picture several times to see it in full size.
 
== Transcoding, Media Pass-through, Short Calls (~250 calls) ==
 
[[File:st20120305-1.png|300px]]
 
<br><br>
== No Transcoding, Media Pass-through, Short Calls (~500 calls) ==
 
[[File:st20120305-21.png|300px]]
[[File:st20120305-22.png|300px]]
[[File:st20120305-23.png|300px]]
 
<br><br>
== No Transcoding, Direct Media, Short Calls (~1000 calls) ==
 
[[File:st20120305-31.png|300px]]
[[File:st20120305-32.png|300px]]
 
<br><br>
== No Transcoding, Direct Media, Long Calls (Random 300-3000s) (peak 4599 calls) ==
 
[[File:st20120305-41.png|300px]]
[[File:st20120305-42.png|300px]]
 
<br><br>
 
=See also:=
* [[Performance tests]]

Latest revision as of 16:58, 15 March 2012

Results

Transcoding G729-G711 Media Pass-through Short Calls (Random 0-300s) Reached calls
Icon check.png Icon check.png Icon check.png ~250
Icon cross.png Icon check.png Icon check.png ~500
Icon cross.png Icon cross.png Icon check.png ~1000
Icon cross.png Icon cross.png Icon cross.png 4599



Conclusions

  • RAM is not important when sending calls. Maximum usage 2.5 Gb was reached but mainly due to GUI usage (Active Calls and some stats pages)
  • CPU is very important - the faster, the better
  • SSD disc RAID1 really helped a lot in high CPS (calls per second) sessions
  • MySQL service took < 10% at peak times and is not important
  • Asterisk service takes major CPU power and is main bottleneck in the long run
  • Voice quality degrades at the time of high CPS (high HDD usage)
  • 20 CPS reached without problems, if more - Asterisk chokes
  • [Comment from Facebook] If you cannot add more CPU power, you can still offload the CPU from transcoding using specialized transcoding cards. Those cards are cheaper than using Digium's G729 licence (10USD each) plus the CPU it needs for the transcoding. If you going to handle 200+ calls go with Xeon CPU(s!). If going to handle 500+ calls, take an addon transcoder cards with the needed channel(licence).



Used hardware

3 equal servers:

CPU: Intel Core i5-2400 (4 Cores)
HDD: 2x 120 GB SSD (RAID1)
RAM: 16 GB DDR3
LAN: 100 Mbps



Setup

Origination server -> Measured Server -> Termination server

Audio was send from one server to another playing tt-monkeys file in infinite loop with Playback application.

Call was terminated by random timeout 0-300s (and 300-3000s in the last test).

One call was always life for testers to hear audio (MOH), to notice when quality degrades.

Calls were originated using script which generates call files in batches (5-10-20-50-100).

Destination was random in a format XXXXXXXXXX, where X in [0..9]



Screenshots

Press on picture several times to see it in full size.

Transcoding, Media Pass-through, Short Calls (~250 calls)

St20120305-1.png



No Transcoding, Media Pass-through, Short Calls (~500 calls)

St20120305-21.png St20120305-22.png St20120305-23.png



No Transcoding, Direct Media, Short Calls (~1000 calls)

St20120305-31.png St20120305-32.png



No Transcoding, Direct Media, Long Calls (Random 300-3000s) (peak 4599 calls)

St20120305-41.png St20120305-42.png



See also: