-  Publisher
                                    
                                        :
                                    
                                 Manning (March 7, 2023) 
-  Language
                                    
                                        :
                                    
                                 English 
-  Paperback
                                    
                                        :
                                    
                                 328 pages 
-  ISBN-10
                                    
                                        :
                                    
                                 1617299774 
-  ISBN-13
                                    
                                        :
                                    
                                 978-1617299773 
-  Item Weight
                                    
                                        :
                                    
                                 1.41 pounds 
-  Dimensions
                                    
                                        :
                                    
                                 7.38 x 0.8 x 9.25 inches 
 
        Effectively reading and understanding existing code is a developer’s superpower. In this book, you’ll master techniques for code profiling, advanced debugging, and log evaluation to find and fix bugs and performance problems.
In Troubleshooting Java: Read, debug, and optimize JVM applications you will learn how to:
 
 Determine what code does the first time you see it
 Expose code logic problems
 Evaluate heap dumps to find memory leaks
 Monitor CPU consumption to optimize execution
 Use thread dumps to find and solve deadlocks
 Easily follow a service-oriented or microservices system
 Properly use logging to better understand Java app execution
 Use Java debuggers efficiently
 
 Searching for bugs, detangling messy legacy code, or evaluating your codebase for new features sucks up much of a developer's time. Troubleshooting Java: Read, debug, and optimize JVM applications teaches code investigation techniques that will help you efficiently understand how Java apps work, how to optimize them, and how to fix the bugs that break them. You’ll go from the basics of debugging to advanced methods for locating problems in microservices architectures, and save yourself hours—or even days—of time. Each new technique is explained with lively illustrations and engaging real-world examples.
 
 Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
 
 About the technology
 Fact: Over the course of your career, you’ll spend far more time reading code than you will writing it. The code investigation skills in this book will radically improve your efficiency in understanding and improving Java applications.
 
 About the book
 Troubleshooting Java: Read, debug, and optimize JVM applications presents practical techniques for exploring and repairing unfamiliar code. In it, you’ll learn timesaving practices for discovering hidden dependencies, discovering the root causes of crashes, and interpreting unexpected results. Go beyond profiling and debugging and start understanding how Java applications really work.
 
 What's inside
 
 Determine what code does the first time you see it
 Evaluate heap dumps to find memory leaks
 Monitor CPU consumption to optimize execution
 Use thread dumps to find and solve deadlocks
 Uncover glitches in code logic
 Locate intermittent runtime problems
 
 About the reader
 For intermediate Java developers.
 
 About the author
 Laurentiu Spilca is a skilled Java and Spring developer and an experienced technology instructor. He is the author of Spring Start Here and Spring Security in Action.
 
 Table of Contents
 PART 1 - THE BASICS OF INVESTIGATING A CODEBASE
 1 Revealing an app’s obscurities
 2 Understanding your app’s logic through debugging techniques
 3 Finding problem root causes using advanced debugging techniques
 4 Debugging apps remotely
 5 Making the most of logs: Auditing an app’s behavior
 PART 2 - DEEP ANALYSIS OF AN APP’S EXECUTION
 6 Identifying resource consumption problems using profiling techniques
 7 Finding hidden issues using profiling techniques
 8 Using advanced visualization tools for profiled data
 9 Investigating locks in multithreaded architectures
 10 Investigating deadlocks with thread dumps
 11 Finding memory-related issues in an app’s execution
 PART 3 - FINDING PROBLEMS IN LARGE SYSTEMS
 12 Investigating apps’ behaviors in large systems  
    Title :Troubleshooting Java: Read, debug, and optimize JVM applications
Author :Laurentiu Spilca