Troubleshooting Java, Second Edition
eBook - ePub

Troubleshooting Java, Second Edition

  1. English
  2. ePUB (mobile friendly)
  3. Available on iOS & Android
eBook - ePub

Troubleshooting Java, Second Edition

About this book

Learn how to quickly work out what your Java code is doing so you can understand when and why it misbehaves.

Searching for bugs, detangling messy legacy code, or evaluating your codebase for new features sucks up much of a developer's time. Effectively reading and understanding existing code is a true superpower! Troubleshooting Java, Second Edition teaches you to efficiently analyze and debug Java applications using time-tested tools and new AI-powered techniques.

In Troubleshooting Java, Second Edition you’ll learn:

• Efficiently use debuggers to quickly understand complex code
• Utilize AI-driven tools to automate log analysis, trace execution, and predict problems
• Correctly implement and interpret application logs
• Identify performance bottlenecks and optimize slow execution paths
• Profile SQL queries to diagnose and optimize database interactions
• Evaluate heap dumps to detect and fix memory leaks
• Analyze thread dumps to resolve deadlocks and concurrency issues
• Navigate the intricacies of service-oriented and microservices systems

In Troubleshooting Java, Second Edition Java veteran Laurentiu Spilca shares techniques for reading, profiling, debugging, and optimizing Java code that he’s honed over years working with high-stakes systems. This fully-revised second edition, updates coverage for new Java tools and adds methods for saving time and effort using AI. You’ll master techniques to identify memory leaks, optimize database queries, and resolve threading issues with ease. The code samples are in Java, but the skills you learn in this guide can be applied to any JVM language.

About the technology

Whether you’re working with legacy systems or using AI to generate fresh programs, you’ll spend more time reading and fixing code than writing it from scratch. Troubleshooting is a messy art, and efficient profiling, logging, debugging, and optimization will save you hours of time and countless headaches.

About the book

Troubleshooting Java, Second Edition teaches practical techniques to diagnose, debug, and optimize Java applications. You’ll learn to uncover hidden dependencies, diagnose crashes, and resolve performance issues using tools like IntelliJ IDEA Debugger, VisualVM, and Heap Dump Analyzer. This revised and updated second edition introduces AI-powered troubleshooting tools, along with techniques for modern Java and cloud-native apps.

What's inside

• Use debuggers to quickly understand complex code
• Automate code analysis with AI tools
• Implement and interpret application logs
• Identify performance bottlenecks

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
1 Starting to know your apps
2 Understanding your app’s logic through debugging techniques
3 Finding problem root causes using advanced debugging techniques
4 Making the most of logs: Auditing an app’s behavior
Part 2
5 Identifying resource consumption problems using profiling techniques
6 Finding hidden problems using profiling techniques
7 Investigating locks in multithreaded architectures
8 Investigating deadlocks with thread dumps
Part 3
9 Profiling memory-related problems
10 Investigating memory problems with heap dumps
11 Analyzing potential JVM problems with GC logs
Part 4
12 Uncovering system-level failures and service communication
problems
13 Measuring data consistency and transactions
A Tools you’ll need
B Opening a project
C Recommended further reading
D Understanding Java threads
E Memory management in Java apps

Trusted by 375,005 students

Access to over 1.5 million titles for a fair monthly price.

Study more efficiently using our study tools.

Information

Publisher
Manning
Year
2025
eBook ISBN
9781638357940

Table of contents

  1. Praise for the first edition
  2. Troubleshooting Java, Second Edition
  3. copyright
  4. contents
  5. foreword
  6. preface
  7. acknowledgments
  8. about this book
  9. about the author
  10. about the cover illustration
  11. Part 1 Revisiting the foundation for code investigation
  12. 1 Starting to know your apps
  13. 2 Understanding your app’s logic through debugging techniques
  14. 3 Finding problem root causes using advanced debugging techniques
  15. 4 Making the most of logs: Auditing an app’s behavior
  16. Part 2 Deep diagnosing an app’s execution
  17. 5 Identifying resource consumption problems using profiling techniques
  18. 6 Finding hidden problems using profiling techniques
  19. 7 Investigating locks in multithreaded architectures
  20. 8 Investigating deadlocks with thread dumps
  21. Part 3 Diagnosing memory-related problems
  22. 9 Profiling memory-related problems
  23. 10 Investigating memory problems with heap dumps
  24. 11 Analyzing potential JVM problems with GC logs
  25. Part 4 Finding problems in large systems
  26. 12 Uncovering system-level failures and service communication problems
  27. 13 Measuring data consistency and transactions
  28. appendix A Tools you’ll need
  29. appendix B Opening a project
  30. appendix C Recommended further reading
  31. appendix D  Understanding Java threads
  32. appendix E  Memory management in Java apps
  33. references

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn how to download books offline
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.5M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1.5 million books across 990+ topics, we’ve got you covered! Learn about our mission
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more about Read Aloud
Yes! You can use the Perlego app on both iOS and Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app
Yes, you can access Troubleshooting Java, Second Edition by Laurentiu Spilca in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming. We have over 1.5 million books available in our catalogue for you to explore.