I was recent tasked with a performance testing project at work. This particular assignment had me feeling a bit panicked until I remembered a quote from one of the greatest minds of our time — Yoda.
“Named must your fear be before banish it you can.”
Although I had six years of prior performance experience under my belt, I hadn’t had the opportunity to use that experience in my current job until that point. However rusty I may have been, however, I fell into a familiar groove in no time. That confidence was regained (and the balance of the force returned) after consulting two of my most trusted “go-to” performance testing Jedi Masters — books!
1. Trusted Performance Testing Jedi Master #1: Performance Analysis for Java(TM) Websites Performance Analysis for Java Web Sites by Stacy Joines, Ruth Willenborg and Ken Hygh
Although this book is written specifically for Java websites and covers Java specific issues, I wouldn’t hesitate to recommend it to anyone who wants to learn more about performance testing in general. All the book’s authors are IBM consultants and really know their stuff. The book is written in a laid-back, informal manner, which makes it an easy read that nonetheless covers some deep concepts. You don’t need a Ph.D. or Master’s degree in mathematics to read this book; it’s written for the everyday performance guy/gal, and a deep knowledge of J2EE is not assumed, so anyone can benefit from the material presented. The book covers many different performance topics such as:
- Basic performance lingo
- Java application server performance
- Performance roles of key web site components, such as network, load balancers, application servers, database, and caching
- Java specifics
- Performance profiles of common websites
- Developing performance test plans
- Executing a successful test
- Collecting useful data
- Common bottleneck symptoms
- Case studies
- Capacity, planning and site growth
- An appendix filled with a checklist, worksheet, and other goodies
Seriously — reading this book is like having a Yoda-like performance guru holding your hand and walking you through an actual performance test from start to finish. It’s a must-own for any serious performance engineer, and well worth its price. I bought mine years ago, and it remains my most useful performance resource.
2. Trusted Performance Testing Jedi Master #2: — Performance Testing Microsoft .NET Web Applications (Pro-Developer)Performance Testing Microsoft .NET Web Applications
While I’ll admit this book is not quite as good as Performance Analysis for Java Web Sites, it is still a great resource for me when I need to know which performance counters to use in HP's LoadRunner for windows servers. This book is also written by a group of experts – the Microsoft Application Consulting and Engineering AC team, who do all the performance for Microsoft’s large web applications. This book does a good job of explaining how to gather the information needed to create a realistic user profile, identifying performance goals, and how to use certain counters to identify bottlenecks – all vital to creating a successful performance test. While they do promote their stress tool ACT (I think this may be a little dated, as the book was written in 2003), they lay out some principles that can be used with any tool, including LoadRunner. It contains the following chapters:
- Laying the Performance Analysis Ground Work
- Preparing the Planning for Performance Test
- Stress Testing with Microsoft Application Center Test (ACT)
- Monitoring Application Performance with System Monitor
- Application Network Analysis
- Analyzing and Performing Tuning Web Tier
- Profiling Managed Code
- Analyzing the SQL Tier
- Estimating ISS Tier Capacity and Transaction Cost Analysis
- Performance Modeling
I don’t think this book is still published in hard-copy form, but a Kindle version should be available. You can also pick up a used copy from Amazon for around three bucks, so what have you got to lose? Arming yourself with these two publications you will help erase your fear when faced with most any performance project that comes your way. As Yoda would say,
“Fear is the path to the dark side. Fear leads to anger. Anger leads to hate. Hate leads to suffering.”
To eliminate your suffering, make it a priority to get your hands on these books ASAP and May the Force be with you!
Performance Analysis for Java(TM) Websites Performance Analysis for Java Web Sites by Stacy Joines, Ruth Willenborg and Ken Hygh
Performance Testing Microsoft .NET Web Applications (Pro-Developer)Performance Testing Microsoft .NET Web Applications