Testing RTMP streaming server – Stress testing using flazr

Flazr is a Java implementation of protocols such as RTMP used for multimedia streaming. The Flazr project includes a streaming media server and related utilities.

Its a collection of streaming tools implemented in Java, which includes a RTMP client, a RTMP server and other utilities. It is available for both windows and linux.

Flazr can do a stress testing on your rtmp streaming server. For testing you cannot manually create hundreds of clients receiving streams from same server. For that you will require a much more of physical infrastructure available (for clients, PC).

This can be achieved virtually using flazr.
Also its requires much of bandwidth – hundreds of clients receiving video streams simultaneously requires high bandwidth or computing power – hundreds of clients playing/decoding video requires a lot of CPU power. And both of things are limited in a testing environment, this is where flazr comes handy. You wont require much of the resources to stress test your RTMP server same as deployed in real scenarios/field/production environment.

Flazr can create lots of connections with a third-party RTMP streaming server and constantly receive video data without playing it, so it doesn’t have the CPU power issue. If you place the Flazr client at the same machine as your RTMP server, you won’t have the bandwidth issue also.

To use Flazr for RTMP stress testing is quite simple. Suppose your RTMP url is rtmp://, go to Flazr directory and type the following command,

./client.sh -version 00000000 -load 30 -threads 15 -host -port 1935  -app live http.stream

This command will create 30 connections (-load 30) to receive data from the RTMP server.
If you want more options, you can just type ./client.sh to view a list of supported configurations.

External references
Flazr Official Website: http://flazr.com/
Youtube Video Tutorial: http://www.youtube.com/watch?v=Wa2bDQLKf8s

This entry was posted in linux, streaming. Bookmark the permalink.