By Laura on Dec 07, 2009
By Shanti Subramanyam
Commercial tools for load testing cost a pile of money, and free tools don't have the necessary functionality. Luckily, Faban solves both these problems.
Faban is two things:
- A framework for developing performance and load tests.
- A tool to run these tests and view their results.
The former is called the “Faban Driver Framework” and the latter is called the “Faban Harness”. Although the two are related, it is entirely possible to run an arbitrary test developed outside of Faban using the Faban Harness. In fact, many benchmarks do just that. In this respect, Faban is rather unique.
The Driver Framework
The real power of Faban is unleashed only when you use the framework. The framework provides capabilities similar to other load testing tools, namely : emulate users, keep track of response times and other metrics, run monitoring tools etc. Some unique features of Faban include the ability to :
- accurately measure server response times at the network layer
- emulate a Markov model to realistically model web workloads
- emulate a Poisson process for inter-arrival times
- support hundreds of thousands of users with the lowest possible resource requirement
If that doesn’t convince you to try Faban, maybe some of the features in the Harness will. Please read on.
The Faban Harness is a web application that queues and executes runs, displays reports and graphs from previous runs and in general serves to maintain the results repository. Some features of the harness include :
- Gathering of configuration information across all the systems in the test configuration (including driver systems)
- Automatic collection of system level performance monitoring data
- Ability to run arbitrary scripts/commands to collect any type of monitoring data
- Automated management of a wide variety of common server applications like apache, MySQL, glassfish etc.
- Graphing of both workload and monitoring data for easier analysis
If a lot of these features sound like LoadRunner and other fancy, high-priced tools, they are (in fact these tools don’t even have all of the functionality I’ve listed above). And you get all this for free in an open-source tool !
So check it out. The easiest way to get started with Faban is using the Quick Start Tutorial. It gives step by step instructions on installing Faban and running a pre-built workload including screen-shots.
If you are ready to start creating your first workload, check out the Creating your first Workload Tutorial. For users new to Java, this step by step tutorial should make it really use to get started.