Achieving good performance with an application is absolutely critical to its acceptance by the user community. Not many users are willing to appreciate a great design and excellent programming standards if the application is sluggish. Even the most useful and desired application will quickly be rejected by the user community if it’s slow to respond to users’ requests.
For web-based applications, organizations must test and measure how fast the various web components are, how many simultaneous hits the web site can handle, and how scalable the software and hardware resources are. They must also understand how the performance of the application will be affected during peak loads.
This chapter explores the performance implications of using the Struts framework and its associated technologies to build web applications, and how certain design and programming decisions will affect the overall performance of the application. A distinction is made between performance, load, and stress testing and the steps necessary to carry out each.
Most developers have had the unfortunate experience of building a slow application. Obviously, developers don’t set out to create slow applications, and there probably isn’t a user group asking, “Could you please make the application run slower?” Too often, bad performance isn’t discovered until the application is finished and installed into a production environment. But why does this happen?