WSO2 Ravana

WSO2 Ravana

WSO2 Ravana is an opensource benchmark test framework that aims to facilitate performance benchmarks of different servers.

Currently the supported transport protocols are HTTP/HTTS and JMS

Basically the project components could be categorized as input, output and scripts that extend functionality.

In order to achieve a clear user separation, the user of the framework is required to provide the scenario in a single folder which consist of;

  • The configuration files
  • Input messages that would be sent to the server
  • Scripts that need to be executed at the benchmark test server. (For example, if a user need to execute a shell script before starting the test in the target server he can put the particular script in his scenario folder and Ravana will automatically execute that shell script in the targeted test server before performing the test.)

The frame work provides output as tab separated result files(tsv) line graphs, histograms, comparison histograms. The output will be provided for Transactions per second(TPS), Time for a request, errors etc.

One of the important feature of Ravana is that different load generators could be plugged into Ravana. Currently supported load generator pluggins are Apache Bench(ab), Java Bench(java-ab), httperf and JMS plugin.

Another important feature of Ravana is that user can run the load generator in a clustered environment. Currently this is only supported for httperf. Support for other load generators will be available soon.