Load Testing with Apache JMeter | Applications to Test

The Applications

Let me start by introducing the applications that we want to load test. The first application is a traditional web-application built with Jakarta Struts. Those of you who have read some of my articles on JavaBoutique may have seen the DVD library application. It’s a simple List-Detail application with two screens that I first presented in "Coding your second Jakarta Struts Application". Here’s the List screen:

Here’s the Detail screen:


The DVD data is kept in an XML-file, so this is our architecture:

We’ll compare response times for this application with another one using web service technology. This application was presented in my article "Using Apache Axis version 1 to build Web Services". This application contains exactly the same functionality as the first one: list DVDs, show details, update, create, delete, and save.

The architecture of the second application is this (the client could be Swing, but it’s not important, since response times are measured from the point where the request leaves the client until the response is received):

Finally we’ll measure response times for a third application, which is a mixture of the two first ones. Again it’s a Struts application, but this time it interfaces to the web service module:

As I’m writing this I haven’t yet measured these applications, but I’d expect the last one to be the slowest, since it has both the Struts layer and the web service layer. I also expect Struts to be very efficient. The web service module I’m curious about. It will have to do some transformations to and from the XML format, and it might take some milliseconds. We’ll see what happens.