Chapter 13: Performance and Scalability

 < Free Open Study > 


Performance and scalability are two important issues that you will need to consider when building enterprise class commercial web applications. For web applications:

  • Performance is a measure of the time elapsed between sending a request to a server and receiving a response

  • Scalability is a measure of the number of concurrent users and sessions a system can support without an unacceptable deterioration in the performance of the application

Why are issues important? The simple answer is that the speed at which the web applications respond to user requests is an important factor in the commercial success of those applications. Most clients are not prepared to submit a form or a click a link and wait for an unreasonable amount of time for the response. The reality is that they may move to a different website. Therefore it is important that your applications should provide split-second responses, and that performance shouldn't deteriorate when the user load on your applications increase.

In this chapter, we will cover the various factors involved in building high-performance and highly-scalable J2EE web applications. We'll begin by discussing good coding practice for writing servlets (although many of the tips we recommend apply equally when we create any Java class). Then we'll look at how we can design applications to improve their performance and scalability, by making correct use of:

  • Handling business logic

  • Data access

  • Caching data

  • Session management

  • Asynchronous communication

  • Deployment strategies to improve performance, such as load balancing and clustering

After we have considered these issues we'll examine some tools that we can use to stress test and analyze performance and scalability. We'll finish by building a custom performance monitor using filters.

 < Free Open Study > 

Professional Java Servlets 2.3
Professional Java Servlets 2.3
ISBN: 186100561X
EAN: 2147483647
Year: 2006
Pages: 130 © 2008-2017.
If you may any questions please contact us: