Java Performance Tuning
O'Reilly Media (Verlag)
978-0-596-00015-8 (ISBN)
- Titel erscheint in neuer Auflage
- Artikel merken
This text provides all the details a developer needs to know to "performance tune" any type of Java program and make Java code run significantly faster. The book 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. The book should appeal to developers who are ready to "roll up their sleeves" and examine their code in detail in order to apply different tuning techniques to produce the best possible result. It shows how to: create and plan a tuning strategy; avoid performance penalties from inefficient code; minimize the number of objects a program creates; improve the behaviour of loops and switches; and use threads effectively.
Jack Shirazi is an independent consultant. He was an early adopter of Java, and for the last few years has consulted mainly for the financial sector, focusing on Java performance. Before using Java, Jack spent many years tuning Smalltalk applications. Jack's early career involved research in theoretical physics and bioinformatics. Jack has publications in the field of protein structure and is proud to have contributed to some of the core Perl5 modules.
Preface 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 2. Profiling Tools Measurements and Timings Garbage Collection Method Calls Object-Creation Profiling Monitoring Gross Memory Usage Client/Server Communications Performance Checklist 3. Underlying JDK Improvements Garbage Collection 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 4. Object Creation Object-Creation Statistics Object Reuse Avoiding Garbage Collection Initialization Early and Late Initialization Performance Checklist 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 6. Exceptions, Casts, and Variables Exceptions Casts Variables Method Parameters Performance Checklist 7. Loops and Switches Java.io.Reader Converter Exception-Terminated Loops Switches Recursion Recursion and Stacks Performance Checklist 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 Performance Checklist 9. Sorting Avoiding Unnecessary Sorting Overhead An Efficient Sorting Framework Better Than O(nlogn) Sorting Performance Checklist 10. Threading User-Interface Thread and Other Threads Race Conditions Deadlocks Synchronization Overheads Timing Multithreaded Tests Atomic Access and Assignment Thread Pools Load Balancing Threaded Problem-Solving Strategies Performance Checklist 11. Appropriate Data Structures and Algorithms Collections Java 2 Collections Hashtables and HashMaps Cached Access Caching Example I Caching Example II Finding the Index for Partially Matched Strings Search Trees Performance Checklist 12. Distributed Computing Tools Message Reduction Comparing Communication Layers Caching Batching I Application Partitioning Batching II Low-Level Communication Optimizations Distributed Garbage Collection Databases Performance Checklist 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 Checklist 14. Underlying Operating System and Network Improvements Hard Disks CPU RAM Network I/O Performance Checklist 15. Further Resources Books Magazines URLs Profilers Optimizers Index
Erscheint lt. Verlag | 11.10.2000 |
---|---|
Zusatzinfo | index |
Verlagsort | Sebastopol |
Sprache | englisch |
Maße | 178 x 234 mm |
Gewicht | 710 g |
Einbandart | kartoniert |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► Java |
Mathematik / Informatik ► Informatik ► Web / Internet | |
ISBN-10 | 0-596-00015-4 / 0596000154 |
ISBN-13 | 978-0-596-00015-8 / 9780596000158 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich