Sunday, March 13, 2011

JBoss AS 5 Performance Tuning - book review


Picture (c) Packt Publishing
Some time ago I received a new book from Packt Publishing i.e. "JBoss AS 5 Performance Tuning". This book couldn't reach me at a better time - few weeks ago my team was also releasing a new software, web application deployed in JBoss 5.x. Let me just write that this books was very useful in this critical time.

Before I start let me just mention that I’m experienced Java and Java EE developer and have worked with JBoss server before. This means that I know how to develop, deploy and monitor web applications in this application server. I also know how to monitor, profile and tune memory as well as performance using JMeter, VisualVM and VisualGC. Despite that, this book gave me even more detailed information and knowledge. With this book I was able to take another look at Java Virtual Machine settings, Garbage Collector settings as well as more advanced JBoss settings.

Let’s start the review here - first of all I’d like to say that the author Francesco Marchioni met my expectations about this book. You can really learn how to monitor and tune JVM, GC and JBoss but you will not learn how to write good and stable Java EE applications. This book is for people who want to know how to find memory leaks, performance bottlenecks, weak points in their applications, how to fix them programatically as well as with help of settings on different levels. You can easily check all topics covered by this book here Table of Contents.

"JBoss AS 5 Performance Tuning" is a very useful and pragmatic book. Francesco uses the same standard (open source/ free) tools as most of Java developers i.e. VisualVM, VisualGC, JMeter and Eclipse Test and Performance Tools Platform (TPTP). He explains why and how to use them and gives concrete examples.

You can read this book from cover to cover or just use it as an encyclopedia and read only the chapters you think could be useful for you. I have to mention a very important information here. Even though this book is named "JBoss AS 5 ..." it is very useful even if you use any other application/web server. Some of the chapters will be useless (especially those dedicated for JBoss ;) but many information in this book is very generic to the Java EE platform.

This book is for experienced Java developers and architects but also for developers who would like to think out of their programming box and to see what problems their code might cause in production and how to solve them and avoid similar issues in the future. You can spend a lot of money for professional training on this subject but maybe you should buy this book before to learn techniques and ideas presented by Francesco.

What I like and don't like at the same time in this book is that the language is quite "hard-core". It means that you really need to spend couple of years developing and deploying production code before you can take this book in your hands. This limits the potential audience significantly but on the other hand limits the size of the book as the author does not have to (or want to) explain every little detail that you as a Java developer should know.

To summarize I think "JBoss AS 5 Performance Tuning" is a really good book one and meets the goals set but the author in 100%. This book is definitely worth it's price as by reading it and applying knowledge from it you could save a lot of money spent for unnecessary hardware resources that could become redundant after correctly tuning JVM/JBoss or you application.

Good job guys - I like this book!

No comments: