Difference between revisions of "Stress Test 2012-03-05"
From Kolmisoft Wiki
Jump to navigationJump to search
(→Setup) |
|||
(4 intermediate revisions by the same user not shown) | |||
Line 17: | Line 17: | ||
= Conclusions = | = Conclusions = | ||
* RAM is not important sending calls. Maximum usage 2.5 Gb was reached but mainly due to GUI usage (Active Calls and some stats pages) | * 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 | * CPU is very important - the faster, the better | ||
* SSD disc RAID1 really helped a lot in high CPS sessions | * 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 | * 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 | * 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) | * Voice quality degrades at the time of high CPS (high HDD usage) | ||
* 20 CPS reached without problems, if more - Asterisk chokes | * 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> | <br><br> | ||
= Used hardware = | = Used hardware = | ||
Line 46: | Line 48: | ||
Origination server -> Measured Server -> Termination server | Origination server -> Measured Server -> Termination server | ||
Audio was send from one server to another playing | 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. | One call was always life for testers to hear audio (MOH), to notice when quality degrades. |
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)