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 |
~250 | |||
~500 | |||
~1000 | |||
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)
No Transcoding, Media Pass-through, Short Calls (~500 calls)
No Transcoding, Direct Media, Short Calls (~1000 calls)
No Transcoding, Direct Media, Long Calls (Random 300-3000s) (peak 4599 calls)