Introduction


How well does your Java web site perform? Does it have enough capacity to handle today's user demands on its busiest days? Can it support additional users in the future? Will you lose potential customers because your web application is too slow? Regrettably, many companies release web sites to their users without knowing the answer to these questions. Performance is a serious issue. If your web site becomes unresponsive , you may lose potential sales or customer loyalty. In fact, government regulations sometimes require some financial web sites to remain responsive regardless of the level of customer demand.

Obviously, the customer's experience with a web site affects the company the web site represents. We work with many people every year trying to make their web sites perform better. Often, these folks come from a background of building PC-based applications, and they struggle with the unfamiliar issues of concurrency and high user volumes . Likewise, we frequently engage with performance and quality assurance (QA) teams who have lots of skill in tuning high-volume web sites and back-end systems. Yet they lack experience with the Java environment and Java web applications and need help to tune them properly. Many sites use Java application servers to power their web applications, and we discuss the special considerations (garbage collecting, threading, heap management, to name a few) that are unique to the J2EE environment. Also, the book covers the special performance requirements of sites supporting handheld devices, as well as sites using Enterprise JavaBeans (EJBs).

We wrote this book to help you better understand how your Java web site performs . First, we don't assume you have a Ph.D. in performance tuning. We don't spend any time on the mathematical theories behind performance testing. (Remember Little's theorem?) Of course, it wouldn't hurt if you wanted to learn more about these theories , but that is not the point of this book. We want to give you a practical guide for managing the performance of your web site. Our combined experience with hundreds of public and private web sites worldwide can help you conduct an effective performance analysis of your web site. Learn how to design performance tests tailored to your web site's content and customer usage patterns.

This book treats your Java web site as a system. Your web site consists of server machines, network hardware, vendor software, and custom applications, just to name a few components . A performance problem might arise in any of these subsystems inside your web site. Instead of focusing narrowly on any one element, we discuss the potential performance impact of everything from your network to your Java web application software. We even discuss some tuning ideas for remote systems residing on other servers or even at your mainframe. We also offer some ideas for preparing each part of your web site system to handle your traffic.

Designed to benefit those with a little or a lot of performance testing background, this book helps you get the most from your performance analysis investment. We organized the book to give the novice the basics before plunging into more advanced topics. If you're new to performance work, start with a thorough reading of the first chapter to nail down the basic terminology and concepts you'll need to understand the more advanced material. (More advanced readers might want to skim this section for any new information before moving on to the advanced material.)

If you're new to Java web applications or to web sites in general, Chapters 2 “5 cover most of the major components of your web site and explain the best practices for their tuning and deployment. Here you'll find some solid recommendations on how to assemble a Java web application, as well as the entire web site, with performance in mind. We also discuss some of the fundamental operational and performance differences between the major web site types you might encounter.

The subsequent chapters cover how to design, execute, and analyze the results of a performance test. We firmly believe an accurate performance test is the best possible way to find out how your web site will perform (or does perform) in production. However, a poorly designed or executed test provides misleading information. We discuss how to build a test appropriate to your web site. Through several chapters, we discuss how to plan for a performance test, including selecting performance test tools and building test scripts. A case study at the end of these chapters pulls the information together into a larger example.

Finally, we describe what to do during the test and how to use the data the test produces. These chapters include a discussion of the performance testing and tuning process we recommend, as well as a rough guide to some common bottleneck symptoms and their possible resolutions . Are you adding load but not seeing increased throughput? Do some machines in your environment work much harder than others? Use the common symptom reference to isolate bottlenecks and improve performance. The appendixes provide helpful checklists for planning and worksheets for capturing the data produced during a performance test, so you can more easily diagnose problems and estimate capacity needs.

In addition to designing better tests, the book provides helpful advice for monitoring tests and analyzing the data collected. We also explore how to use the data from the test to develop a capacity plan for your production web site, as well as a plan for future growth. The ongoing case study provides solid examples of how to use these concepts. Our aim is to show you how to determine the best your site will do under the worst of conditions. Moreover, the book is useful as a performance reference guide. The appendixes include a series of worksheets to help you through capacity planning formulas and summarize key performance testing concepts into a series of checklists. We also include a list of some tool vendors who provide performance testing, analysis, and monitoring tools.

We want to make performance testing accessible to anyone charged with the task. Performance concepts readily map to everyday experiences, and we believe a successful performance evaluation is within the grasp of anyone willing to learn some basics. Don't let your e-business become the next cautionary tale highlighted on the evening news because your site can't handle traffic on its busiest days. Learn how to make use of performance testing and capacity planning to prepare your site for success.



Performance Analysis for Java Web Sites
Performance Analysis for Javaв„ў Websites
ISBN: 0201844540
EAN: 2147483647
Year: 2001
Pages: 126

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net