Performance Blog

Faban1.0 Released

Posted on: November 11, 2009

Faban 1.0 has just been released. This is a major milestone for this open-source workload creation and test framework. Faban is widely used by many performance geeks to performance test various types of server applications. Amongst open source tools, Faban is unique in that it not only provides a framework to create and run performance/load tests, but also has robust functionality to run monitoring tools. It collects all sorts of configuration information as well to truly help performance engineers keep track of configuration and tuning settings.

Here are some major new features in 1.0 which I think will make Faban a very attractive proposition (when compared to the likes of some very expensive proprietary tools).

Automated Form Generation

If you have used Faban before to create workloads, this is the feature you probably have been craving. But let me explain for those who have never used Faban.

Unlike most other tools, Faban does not provide a standard GUI to drive workloads. Instead, a workload developer needs to create a custom form for each workload using XForms. This provides great flexibility and power in designing workloads as you can tailor the information you collect to the workload. On the other hand, editing XForms is a nightmare and error-prone and most benchmark developers spend the most amount of time in this one task. No longer. Faban 1.0 auto-generates the XForms for you from your run configuration file (run.xml) at deploy time. How cool is that !  And the generated forms are hard to tell apart from good hand-crafted ones – they are that good !

Dynamic Services and Tools

Faban always had the concept of Services (meaning objects that were responsible for managing a particular server application like Oracle, Apache etc.) A Service is used to start/stop/restart a server, grab it’s configuration and error logs etc. But to add a new service, one had to add a class to the Faban code. This meant a user had to not only understand Faban code but also had to get the new service code committed. The same was true for monitoring tools (For example, I added ‘mcstat’ – a tool for monitoring memcached but this had to go in as part of the Faban harness code).

With 1.0, both services and tools can be dynamically deployed. This means you can write your own services and tools and deploy them in your own environment. What’s more – Faban comes with several sample services to get you started. These include services for Apache, Glassfish, Memcached, MySQL, Oracle etc. I have added services for Thin and Nginx as part of Olio using this framework. See the documentation for more details.

Tags and Feeds

As the number of tests and results grow, we have all faced the situation where we can’t find a particular run result. Tags can greatly help here. Faban 1.0 has  web2.0 features including tags and RSS feeds. You can add tags when defining a new test (actually it’s easy enough to add them later as well, so you can go back and tag all your old runs if you want to). To find a particular test (or series of tests), you can do a Tag Search from the main Faban page.

You may wonder what in the world is the use of a Feed in a performance tool ? Well, if you kick off a series of runs before you leave work, you can sign up for the RSS Feed (located at the top right corner of the screen). This will send you an email whenever a run completes. So even if you don’t have access to your test systems, you can view the results anywhere – perhaps on your iPhone while you are at dinner ?

This post is already too long. I’ll cover the other new features in a future post. But meanwhile, do check out Faban 1.0.

Advertisements

10 Responses to "Faban1.0 Released"

You should post some screenshots!

Yes indeed. We have something in the works which is more than screen-shots. You’ll soon see.

[…] Startup Weekend Faban for new users December 2, 2009 After finishing my post on the Faban 1.0 announcement, I realized that it was geared towards users who were already using Faban. So I decided to write […]

I’m currently evaluating different load generation frameworks for our own testing purposes. I took a look at Faban and while it does indeed seem to be very powerful, the overwhelmingly poor documentation makes this a non-starter.

Out of all the things you’ve mentioned in this post, I’ve found no usable documentation. There isn’t even an explanation for how to do something like a basic http post test. (And I’m including the autogenerated JavaDoc in this statement.)

Worse yet, the mailing list/forum has overwhelmingly more spam than questions, and the majority of those have gone unanswered. To say this is discouraging would be an understatement.

I’m now looking at Grinder. Their website has a large quantity of documentation including an extensive gallery of premade scripts. This is how

I’m sorry you did not find the right documentation. The samples are in the samples/benchmarks directory of the download. Plenty of them show post requests. Perhaps you did not find the documentation at http://faban.sunsource.net/1.0/docs/ – this just tells us the documentation link is not at the right place. Or are simple things like making http requests just drowned by other Faban documentation?

We try to keep the mailing list clean. Can you please identify which mailing list you’re seeing lots of spam? We always respond to questions (non-spam) posted to the mailing list and remove the spam. A painful process, indeed.

Lastly, please do email questions to the mailing list or to the project owner listed on top of the project page at http://faban.sunsource.net/ if you have trouble with the mailing list. We are more than happy to help.

Please also check this post : https://perfwork.wordpress.com/2009/12/02/faban-for-new-users/
It is targeted at New Faban users and has links to some tutorials.
The Faban developers are extremely responsive and answer every query posted on the forum within 24 hours. Please do give Faban a try.

The Grinder is the best tool for performance testing. I’ve working on GrinderStone – IDE for Grinder scripts which allows debug scripts using Eclipse and provides some interesting features for development like modularity and pretty useful logging in debug mode. That project you can download from official project site:

http://code.google.com/p/grinderstone

we also have Eclipse Update site for simple plugin installation into Eclipse platform. All details you can obtain on our site and support group. Look thru GrinderStone and you’ll like it, it gives you more power to develope Grinder scripts.

Shanti, what happened to the Faban original website?

It appears that it has vanished. We knew for some time now that sunsource.net was going away, just didn’t know when. We’ll get it hosted someplace else soon.

Just found out from an Oracle colleague that although sunsource.net is gone, opensparc.net is still available and Faban pages are now reachable via http://www.opensparc.net/sunsource/faban/www/index.html. The pages need some re-formatting though.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Pages

Latest Tweets

Categories

Archives

%d bloggers like this: