Book Image

Oracle JRockit: The Definitive Guide

Book Image

Oracle JRockit: The Definitive Guide

Overview of this book

Oracle JRockit is one of the industry’s highest performing Java Virtual Machines. Java developers are always on the lookout for better ways to analyze application behavior and gain performance. As we all know, this is not as easy as it looks. Welcome to JRockit: The Definitive Guide.This book helps you gain in-depth knowledge of Java from the JVM’s point of view. We will explain how to write code that works well with the JVM to gain performance and scalability. Starting with the inner workings of the JRockit JVM and finishing with a thorough walkthrough of the tools in the JRockit Mission Control suite, this book is for anyone who wants to know more about how the JVM executes your Java application and how to profile for better performance.
Table of Contents (23 chapters)
Oracle JRockit
Credits
Foreword
About the Authors
Acknowledgement
About the Reviewers
Preface
12
Using the JRockit Management APIs
Bibliography
Glossary
AST
CAS
HIR
IR
JFR
JMX
JRA
JSR
LIR
MD5
MIR
PDE
RCP
SWT
TLA
Index

Foreword

I remember quite clearly the first time I met the JRockit team. It was JavaOne 1999 and I was there representing WebLogic. Here were these Swedish college kids in black T-shirts describing how they would build the world's best server VM. I was interested in hearing their story as the 1.2 release of HotSpot had been delayed again and we'd been running into no end of scalability problems with the Classic VM. However I walked away from the booth thinking that, while these guys were smart, they had no idea what they were biting off.

Fast-forward a few years. BEA buys JRockit and I become the technical liaison between the WebLogic and JRockit teams. By now JRockit has developed into an excellent offering—providing great scalability and performance on server-side systems. As we begin working together I have the distinct pleasure of getting to know the authors of this book: Marcus Lagergren and Marcus Hirt.

Lagergren is a remarkably prolific developer, who at the time was working on the compiler. He and I spent several sessions together examining optimizations of WebLogic code and deciphering why this method or that wasn't getting inlined or devirtualized. In the process we, along with the rest of the WebLogic and JRockit teams, were able to produce several SPECjAppServer world records and cement JRockit's reputation for performance.

Hirt, on the other hand, is extremely focused on profiling and diagnostics. It was natural, therefore, that he should lead the nascent tooling effort that would become JRockit Mission Control. This was an extension of an early observation we had, that in order to scale the JRockit engineering team, we would have to invest in tooling to make support and debugging easier.

Fast-forward a few more years. I'm now at Oracle when it acquires BEA. I have the distinct pleasure of again welcoming the JRockit team into a new company as they joined my team at Oracle. The core of the JRockit team is still the same and they now have a place among the small group of the world's experts in virtual machines.

Lagergren is still working on internals—now on JRockit Virtual Edition—and is as productive as ever. Under Hirt's leadership, Mission Control has evolved from an internal developer's tool into one of the JRockit features most appreciated by customers. With this combination of long experience and expertise in all layers of JRockit, it is difficult for me to imagine a better combination of authors to write this book.

Therefore, as has been the case many times before, I'm proud to be associated in some small way with the JRockit team. I trust that you will enjoy reading this book and hope that you will find the topic to be as satisfying as I have found it to be over the years.

Adam Messinger

Vice President of Development, Oracle Fusion Middleware group

February 14, 2010

San Francisco, CA