Hi,
Below are some general recommendations to help guide you toward scaling your streaming needs. Ultimately, you will need to test the performace of your hardware and bandwidth to ensure the capability of handling that capacity.
TESTING
Please note that we encourage you to run your own load tests with simulated users while applying the tips we offer in our general performance tuning guidelines. The guidelines can be reviewed here:
If you don’t yet have our free Flash/RTMP load testing tool package to create a simulated audience for your server’s streams, please see the following url to complete your request:
More information about the tool is at
HARDWARE RECOMMENDATIONS:
Ideally, hardware for a production Wowza Server is a dedicated quad core server with newer model Xeon chips, 4 - 8 gigs of RAM, and at least 1 gigabit ethernet network interface connector (NIC). On the software side, you will need to deploy a 64-bit operating system, 64-bit Java, and set the Java heap set to 3000 MBytes or higher.
From our customer’s tests, with live Flash streams (1-to-many), the best performance so far has been seen from the newest generation of servers powered by Intel (Nehalem or later processor family) with built-in 10 Gbit Ethernet ports. Specifically, in lab testing, the Sun x4270 and the HP Proliant G6 (and HP c7000) have shown performance up to saturating a 10 GbE connection after careful performance tuning by operating system experts.
Related press:
tips:
-
remember, you’ll need a 64- bit operating system to use as much RAM as we recommend- For older generation dual core Xeon servers, we have posted our benchmark results in our FAQ
-
one Gb Ethernet NIC yields approx 800 Mbits/sec total bandwidth
-
800 Mb/s represents the one connection on your network interface card operating at saturation
-
With multiple network connections, you’ll also want to use the OS’s functions for bonding the GbE NICs together
-
For the generation of quad-core Intel Xeon processors immediately prior to the Nehalem family (ie: pre-2009 chips), we estimate that one quad-core processor can saturate only one single 1 Gbit/sec connection.
LIVE, REAL TIME TRANSCODER PERFORMANCE
For benchmarks of our new live stream Transcoder AddOn product, please see this post:
When planning to use the Transcoder AddOn to process inbound streams, please review our per channel pricing policies at wowza.com
MULTI-SERVER LIVE STREAMING
For splitting a live Flash/RTMP stream across multiple servers, our live stream repeater configuration (aka: origin/edge) is documented in our User’s Guide & here:
Read about our dynamic load balancer module from the forums:
(the source is included in that download so you can modify it to meet your needs, or ask me for contact information for third party consultants who can provide customization services).
MULTI-SERVER VOD STREAMING
If on-demand playback of many different pre-recorded files becomes important, please plan a multi-tier storage architecture which might even require SSD devices. Also ask me about our MediaCache software caching technology to reduce the load on your primary file server. Note that the benchmark in our FAQ has some baseline VOD performance numbers for your reference. Also, tests by Sun Microsystems showed that a caching technology like their ZFS improves VOD performance dramatically.
IMPORTANT NOTES:
-
If you plan to re-stream more than 100 different live inputs on a standard dedicated server, please make plans to conduct your own performance tests (see below). Amazon’s EC2 server instances may not reach this level of performance.
-
We have no data at this time describing the performance for the nDVR. It will be disk I/O limited so please plan to make adequate tests.
-
If you plan to attempt to reach more than 5 Gbps output from a single server, note that a single Java JVM appears to be limited to no more than 5 Gbps. You will probably therefore need to start up two copies of our software to go past 5 Gbps – and this has billing/licensing implications.
-
For video chat (1-to-1 interactive conversations), you will always need to carefully test as your own front end code can change the performance. A plan for regular, ongoing performance optimization projects is strongly encouraged if the size of your community will be growing over time.
-
Our customers have found that the Amazon’s EC2 servers reach bandwidth limitations far before any other considerations. The guidelines we recommend are:
-
Small server max is 150 Mbit/sec (approximately 300 concurrent streams at 500 kb/s)
-
Large server max is 225 Mbit/sec (approx. 450 streams at 500 kb/s)
-
X-large server max is 350 Mbit/sec (approx. 700 streams at 500 kb/s)
-
Video recording for archives or nDVR usage will require you to run your own benchmarks.
Regards,
Mac