[Contents] [Prev] [Next] [Index]

Introduction

Since the Java platform was introduced in 1995 it has become highly popular among both programmers and the companies they work for because it facilitates the rapid development and deployment of new software. From the start, however, Java technology has been dogged with complaints about its speed. A recent search of the USENET group comp.lang.java.programmer resulted in nearly 3,000 articles that contained the words "Java" and "slow." Clearly, performance is an area of concern for many developers.

In the past few years, there have been numerous technological advances that have improved the performance of the Java platform. Just-in-time (JIT) compilers and advanced runtime systems, such as Sun's Java HotSpot Virtual Machine, have significantly improved performance. In addition, as Moore's Law dictates, computers continue to get more powerful every year. Today's average PC is an order of magnitude faster than the average PC at the time Java technology was first introduced. Despite these advances, complaints about the speed of Java technology-based programs persist.

When average hardware performance continues to get faster, and the core runtime technology continues to improve, why do so many developers continue to have performance issues? The answer turns out to be somewhat obvious. The software being developed for the Java platform today is much more complex than it was just a year or two ago. Developers are continuing to push the envelope-each time the tools improve, the scope and complexity of the applications being built with them increases. In short, the technology is fulfilling the promise that it's not just for "Dancing Duke" applets anymore.

Dancing Duke

Powerful Java technology-based enterprise systems are being deployed in situations where millions of dollars are riding on the system's success. Independent software vendors (ISVs) are replacing and trying to compete with solutions written with more traditional languages like C++.

A commercial Swing-based Java application

Not only do today's Java applications go far beyond making Duke dance, these large-scale, mission-critical software solutions are more complex than anything many Java programmers have written in the past. As they continue to push the limits of the technology, developers are also being asked to solve increasingly difficult problems that push the limits of their experience.

Developing high-performance software in any language is not a trivial task. In addition to a thorough understanding of the language and libraries you're using, you need to know how to effectively fit performance tuning into your overall development process.

This book presents strategies and tactics you can use to make performance tuning a part your software development process and effectively evaluate and optimize the performance of your software.



[Contents] [Prev] [Next] [Index]

Copyright © 2001, Sun Microsystems,Inc.. All rights reserved.