Overview
Performance has been an important issue for Java developers ever since the first version hit the streets. Over the years, Java performance has improved dramatically, but tuning is essential to get the best results, especially for J2EE applications. You can never have code that runs too fast.
Java Peformance Tuning, 2nd edition provides a comprehensive and indispensable guide to eliminating all types of performance problems. Using many real-life examples to work through the tuning process in detail, JPT shows how tricks such as minimizing object creation and replacing strings with arrays can really pay off in improving your code's performance.
Tuning J2EE applications bears many similarities to tuning J2SE apps, but important and specific considerations apply. For this reason, Java Performance Tuning, Second Edition includes four new chapters: a new chapter on J2EE application tuning in general followed by chapters on tuning JDBC, servlets and JSPs, and EJBs.
Java Performance Tuning offers common-sense advice about what to tune and what to leave alone, emphasizing techniques that provide big performance gains with minimal code restructuring. It gives you crucial guidance that helps you tune without destroying your program's architecture. Blindly changing things in an effort to make a program run faster is a great way to create buggy, unmaintainable code. Java Performance Tuning teaches you to work efficiently and effectively, resulting in code that is robust, maintainable, and fast.
Java Performance Tuning, Second Edition shows you how to:
- Create a performance plan
- Glean information about your program's behavior from profiling tools
- Identify bottlenecks before tuning
- Minimize the number of objects your program creates, particularly critical for J2EE applications
- Optimize the use of strings
- Avoid performance penalties from inefficient code
- Improve the behavior of loops and switches
- Optimize I/O behavior
- Use appropriate algorithms for sorting and other common tasks
- Use threads effectively
- Optimize the performance of distributed systems
- Speed up servlets and JSPs
- Structure JDBC usage efficiently
- Use effective design patterns to optimize EJB performance
Covers JDK 1.4
Synopsis
Java Performance Tuning contains step-by-step instructions on all aspects of the performance tuning process, right from such early considerations as setting goals, measuring performance, and choosing a compiler. Extensive examples for tuning many parts of an application are described in detail, and any pitfalls are identified. The book also provides performance tuning checklists that enable developers to make their tuning as comprehensive as possible.
Booknews
Provides guidance on eliminating all types of performance problems in Java, using reality-based examples to work through the tuning process in detail. Covers how to minimize object creation, replace strings with arrays, and other tricks that can greatly improve code performance. Also provides guidance on what to tune and what to leave alone and how to tune without destroying a program's architecture. Annotation c. Book News, Inc., Portland, OR (booknews.com)
Editorials
From Barnes & Noble
The Barnes & Noble ReviewIf Java were inherently fast, it would’ve conquered the whole world by now, not just half of it. But there’s plenty you can do to improve Java performance, without compromising reliability or maintainability or even (in most cases) messing with architecture. Java Performance Tuning, 2nd Edition brings together an immense range of techniques -- up through Java 1.4 and now including J2EE, too.
Longtime Java performance consultant Jack Shirazi starts where any optimization process ought to begin: by helping you assess why users experience your application as slow, what to measure, and how to measure it using today’s Java profiling tools.
Next, Shirazi systematically addresses every area that can cause bottlenecks in Java performance. He covers underlying JDK issues like garbage collection and heap tuning; possible runtime optimizations; when to compile to native machine code and use native method calls; and so forth.
You’ll find detailed coverage of object creation and reuse; strings vs. arrays; exceptions, assertions, casts, and variables; loops, switches, and recursion; I/O; sorting; threading; data structures and algorithms; and much more. Shirazi’s excellent chapter on optimizing distributed application infrastructure covers everything from caching and compression to batching and stubbing; reducing messaging to (where necessary) application repartitioning. Every chapter ends with a handy Performance Checklist.
Enterprise developers will especially appreciate Shirazi’s four all-new chapters on J2EE -- ranging from servlets and JSP to EJBs, JDBC, and JMX. There’s even a discussion of optimizing Sun’s notorious Pet Store e-commerce application. Bill Camarda
Bill Camarda is a consultant, writer, and web/multimedia content developer. His 15 books include Special Edition Using Word 2000 and Upgrading & Fixing Networks for Dummies, Second Edition.