« FairUse4WM Works | Main | Tools We Use at FeedBurner »

Pro Java EE 5 Performance Management and Optimization

I'd like to tell you about another Java book that I've found useful. Today, we have Pro Java EE5 Performance Management and Optimization by Steven Haines. It's about ... yes, Java performance: what is it, how do you measure it, how do you improve it, and how do you dig out when it shits on your head. There are a ton of resources on the web and elsewhere on this subject, but what I like about this book is that it brings some formality to the table. "Performance" is such an amorphous term, yet eminently measurable. This book helps you get your arms around the subject and suggests a very specific way to start thinking about managing performance on an ongoing basis.

At FeedBurner, the scalability and efficiency of our core app is obviously very important and has a direct bearing on our equipment purchasing plans. But, to be honest, we haven't been terribly formal about things. Sure, we run our code through a profiler on occasion, and we'll tweak our jvm settings here and there, but for better or for worse, most of our performance tuning has been reactive, usually driven by frequent db query measurement and analysis.

We've started to become a bit more rigorous, though, so the timing of this book is very fortuitous. This book covers the spectrum, from "process" all the way down to suggested JVM garbage collection settings. Chapter 10 ("Java EE Performance Assessment") is especially valuable -- it's a great overview of everything that you should be paying attention to if you have a system that needs to perform.

The writing is fairly good, although there's quite a bit of repetition, and the beginning of each chapter is a little bit Celestine Prophecy, but the author can be forgiven for trying to make things interesting. Also, Mr. Haines works at Quest Software, which produces diagnostic tools like JProbe, but his advice is almost completely tool-agnostic, which I appreciate.

So, a good book to have on hand -- you should really consider getting it if you're responsible for a web-based Java application!

You can read an excerpt here: Solving common Java EE performance problems

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)