Java Performance
Book information
Description
“The definitive master class in performance tuning Java applications…if you love all the gory details, this is the book for you.” –James Gosling, creator of the Java Programming Language Improvements in the Java platform and new multicore/multiprocessor hardware have made it possible to dramatically improve the performance and scalability of Java software. Java™ Performance covers the latest Oracle and third-party tools for monitoring and measuring performance on a wide variety of hardware architectures and operating systems. The authors present dozens of tips and tricks you’ll find nowhere else. You’ll learn how to construct experiments that identify opportunities for optimization, interpret the results, and take effective action. You’ll also find powerful insights into microbenchmarking–including how to avoid common mistakes that can mislead you into writing poorly performing software. Then, building on this foundation, you’ll walk through optimizing the Java HotSpot VM, standard and multitiered applications; Web applications, and more. Coverage includes Taking a proactive approach to meeting application performance and scalability goals Monitoring Java performance at the OS level in Windows, Linux, and Oracle Solaris environments Using modern Java Virtual Machine (JVM) and OS observability tools to profile running systems, with almost no performance penalty Gaining “under the hood” knowledge of the Java HotSpot VM that can help you address most Java performance issues Integrating JVM-level and application monitoring Mastering Java method and heap (memory) profiling Tuning the Java HotSpot VM for startup, memory footprint, response time, and latency Determining when Java applications require rework to meet performance goals Systematically profiling and tuning performance in both Java SE and Java EE applications Optimizing the performance of the Java HotSpot VM Using this book, you can squeeze maximum performance and value from all your Java applications–no matter how complex they are, what platforms they’re running on, or how long you’ve been running them. Contents Foreword Foreword Preface Acknowledgments About the Authors Chapter 1 Strategies, Approaches, and Methodologies Forces at Play Two Approaches, Top Down and Bottom Up Choosing the Right Platform and Evaluating a System Bibliography Chapter 2 Operating System Performance Monitoring Definitions CPU Utilization CPU Scheduler Run Queue Memory Utilization Network I/O Utilization Disk I/O Utilization Additional Command Line Tools Monitoring CPU Utilization on SPARC T-Series Systems Bibliography Chapter 3 JVM Overview HotSpot VM High Level Architecture HotSpot VM Runtime HotSpot VM Garbage Collectors HotSpot VM JIT Compilers HotSpot VM Adaptive Tuning References Chapter 4 JVM Performance Monitoring Definitions Garbage Collection JIT Compiler Class Loading Java Application Monitoring Bibliography Chapter 5 Java Application Profiling Terminology Oracle Solaris Studio Performance Analyzer NetBeans Profiler References Chapter 6 Java Application Profiling Tips and Tricks Performance Opportunities System or Kernel CPU Usage Lock Contention Volatile Usage Data Structure Resizing Increasing Parallelism High CPU Utilization Other Useful Analyzer Tips Bibliography Chapter 7 Tuning the JVM, Step by Step Methodology Application Systemic Requirements Rank Systemic Requirements Choose JVM Deployment Model Choose JVM Runtime GC Tuning Fundamentals Determine Memory Footprint Tune Latency/Responsiveness Tune Application Throughput Edge Cases Additional Performance Command Line Options Bibliography Chapter 8 Benchmarking Java Applications Challenges with Benchmarks Design of Experiments Use of Statistical Methods Reference Bibliography Chapter 9 Benchmarking Multitiered Applications Benchmarking Challenges Enterprise Benchmark Considerations Application Server Monitoring Profiling Enterprise Applications Bibliography Chapter 10 Web Application Performance Benchmarking Web Applications Web Container Components Web Container Monitoring and Performance Tunings Best Practices Bibliography Chapter 11 Web Services Performance XML Performance Validation Resolving External Entities Partial Processing of XML Documents Selecting the Right API JAX-WS Reference Implementation Stack Web Services Benchmarking Factors That Affect Web Service Performance Performance Best Practices Bibliography Chapter 12 Java Persistence and Enterprise Java Beans Performance EJB Programming Model The Java Persistence API and Its Reference Implementation Monitoring and Tuning the EJB Container Transaction Isolation Level Best Practices in Enterprise Java Beans Best Practices in Java Persistence Bibliography Appendix A: HotSpot VM Command Line Options of Interest Appendix B: Profiling Tips and Tricks Example Source Code Lock Contention First Implementation Lock Contention Second Implementation Lock Contention Third Implementation Lock Contention Fourth Implementation Lock Contention Fifth Implementation First Resizing Variant Second Resizing Variant Increasing Parallelism Single-Threaded Implementation Increasing Parallelism Multithreaded Implementation Index A B C D E F G H I J K L M N O P Q R S T U V W X Y
Similar books
Java Performance
2011 · PDF
Java Performance Companion
2016 · PDF
NetBeans™ IDE Field Guide Developing Desktop, Web, Enterprise, and Mobile Applications
2005 · CHM
NetBeans IDE Field Guide: Developing Desktop, Web, Enterprise, and Mobile Applications
2006 · CHM
MySQL® Notes for Professionals book
2018 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
Session C11: Ancient Cultural Landscapes in South Europe – their Ecological Setting and Evolution, Session C22: Gardeners from South America, Session S04: Agro-Pastoralism and Early Metallurgy Sessions, Session WS29: The Idea of Enclosure in Recent Iberian Prehistory, Session C88: Rhytmes et causalites des dynamiques de l'anthropisation en Europe entre 6500 ET 500 BC: Hypotheses socio-culturelles et/ou climatiques: Proceedings of the XV UISPP World Congress (Lisbon 4-9 September 2006) / Actes du XV Congrès Mondial (Lisbonne 4-9 Septembre 2006) Vol.36
2010 · PDF