The catspeed application

Catspeed is a tool to measure responsetime in Tomcat based applications. Is is based on javassist and ads code to the classes on loadtime. Besides javasssist for code modifications is uses the jakarta struts framework for content management and cewolf/jfreeechart for graph generation. After installing and configuring catspeed you can simply use your application and the responsetimes of the methods you have pointed out will be mesured.

The best way to use catspeed is to combine it with some sort of loadtest. By putting your application under pressure the parts of your application that has performance problems will be visible in the responsetime measurements.

If there is configuration problems with connectionpools or concurrency issues in the code they will also be visible in the graphs.

With catspeed there is an example loadtest of the Mailreader "Struts example application" which shows you how to make a loadtest using jUnit/jWebUnit. The example test also shows how to explicitly log performance data from a jUnit/jWebUnit testcase into catspeed for presentation.

Catspeed is ment to be a tool used in the stage of the development process where the complexity of the application or the need for parallel execution of many users makes tracing or profiling to complicated.

The catspeed application is in version 0.2 and has some performance issues of its own (if you try to monitor hundreds of methods at the same time). If you limit your measurements to 20 or 30 methods, the responsetimes measured should be precise enough to point out where to optimize your code.

Catspeed is created under the LGPL license by Jesper Mortensen

Sceen dumps Logo Support This Project