My Account
View Cart
Home
Community
Books & Videos
Safari Books Online
Conferences
Training
School of Technology
About
Complete List
Bestsellers
New Releases
Rough Cuts
Upcoming Titles
Ebooks
By Publisher
By Series
Out of Print
Order Info
Search
Search Tips
Tell a friend
Java Performance Tuning, Second Edition
By
Jack Shirazi
January 2003
Pages: 588
|
Table of Contents
|
Index
|
Sample Chapter
|
Colophon
Table of Contents
Chapter 1
Introduction
Why Is It Slow?
The Tuning Game
System Limitations and What to Tune
A Tuning Strategy
Perceived Performance
Starting to Tune
What to Measure
Don't Tune What You Don't Need to Tune
Performance Checklist
Chapter 2
Profiling Tools
Measurements and Timings
Garbage Collection
Method Calls
Object-Creation Profiling
Monitoring Gross Memory Usage
Client/Server Communications
Performance Checklist
Chapter 3
Underlying JDK Improvements
Garbage Collection
Tuning the Heap
Gross Tuning
Fine-Tuning the Heap
Sharing Memory
Replacing JDK Classes
Faster VMs
Better Optimizing Compilers
Sun's Compiler and Runtime Optimizations
Compile to Native Machine Code
Native Method Calls
Uncompressed ZIP/JAR Files
Performance Checklist
Chapter 4
Object Creation
Object-Creation Statistics
Object Reuse
Reference Objects
Avoiding Garbage Collection
Initialization
Early and Late Initialization
Performance Checklist
Chapter 5
Strings
The Performance Effects of Strings
Compile-Time Versus Runtime Resolution of Strings
Conversions to Strings
Strings Versus char Arrays
String Comparisons and Searches
Sorting Internationalized Strings
Performance Checklist
Chapter 6
Exceptions, Assertions, Casts, and Variables
Exceptions
Assertions
Casts
Variables
Method Parameters
Performance Checklist
Chapter 7
Loops, Switches, and Recursion
Loops
Tuning a Loop
Exception-Terminated Loops
Switches
Recursion
Recursion and Stacks
Performance Checklist
Chapter 8
I/O, Logging, and Console Output
Replacing System.out
Logging
From Raw I/O to Smokin' I/O
Serialization
Clustering Objects and Counting I/O Operations
Compression
NIO
Performance Checklist
Chapter 9
Sorting
Avoiding Unnecessary Sorting Overhead
An Efficient Sorting Framework
Better Than O(nlogn) Sorting
Performance Checklist
Chapter 10
Threading
User-Interface Thread and Other Threads
Race Conditions
Deadlocks
Synchronization Overhead
Timing Multithreaded Tests
Atomic Access and Assignment
Thread Pools
Load Balancing
Threaded Problem-Solving Strategies
Performance Checklist
Chapter 11
Appropriate Data Structures and Algorithms
Collections
Java 2 Collections
Hashtables and HashMaps
Optimizing Queries
Comparing LinkedLists and ArrayLists
The RandomAccess Interface
Cached Access
Caching Examples
Finding the Index for Partially Matched Strings
Search Trees
Performance Checklist
Chapter 12
Distributed Computing
Tools
Message Reduction
Comparing Communications Layers
Caching
Batching I
Application Partitioning
Batching II
Low-Level Communication Optimizations
Distributed Garbage Collection
Databases
Web Services
Performance Checklist
Chapter 13
When to Optimize
When Not to Optimize
Tuning Class Libraries and Beans
Analysis
Design and Architecture
Tuning After Deployment
More Factors That Affect Performance
Performance Planning
Performance Checklist
Chapter 14
Underlying Operating System and Network Improvements
Hard Disks
CPU
RAM
Network I/O
Performance Checklist
Chapter 15
J2EE Performance Tuning
Performance Planning
J2EE Monitoring and Profiling Tools
Measurements: What, Where, and How
Load Testing
User Perception
Clustering and Load Balancing
Tuning JMS
Performance Checklist
Chapter 16
Tuning JDBC
Measuring JDBC Performance
Tuning JDBC
Performance Checklist
Chapter 17
Tuning Servlets and JSPs
Don't Use SingleThreadModel
Efficient Page Creation and Output
Body Tags
Cache Tags
HttpSession
Compression
More Performance Tips
Case Study: Ace's Hardware SPECmine Tool
Performance Checklist
Chapter 18
Tuning EJBs
Primary Design Guidelines
Performance-Optimizing Design Patterns
The Application Server
More Suggestions for Tuning EJBs
Case Study: The Pet Store
Case Study: Elite.com
Performance Checklist
Chapter 19
Further Resources
The Primary Resource
Books
Magazines
URLs
Profilers
Optimizers
Colophon
Return to
Java Performance Tuning