Search

GC easy – Universal Java GC Log Analyser

How to Troubleshoot Microservices Metaspace OutOfMemoryError?

The post discusses troubleshooting a 'java.lang.OutOfMemoryError: Metaspace' issue in a microservice application, which works initially but fails after a few hours. It details identifying memory leaks in the Metaspace region through garbage collection logs and heap dump analysis, ultimately resolving the issue by upgrading a problematic third-party library.

Java Hashtable, HashMap, ConcurrentHashMap – Performance impact

This post compares the performance of HashMap, Hashtable, and ConcurrentHashMap through practical examples. It recommends ConcurrentHashMap for its thread-safe implementation, despite being marginally slower than HashMap. Testing showed HashMap performed best, but was not thread-safe, while Hashtable was significantly slower due to its synchronization constraints.

Benefits of setting initial and maximum memory size to the same value

This post discusses the advantages of setting the initial heap size equal to the maximum heap size for Java applications running on JVM. It highlights benefits like improved application availability, enhanced performance, reduced startup time, and unchanged computing costs. The article argues that this practice is particularly beneficial for enterprise applications.

Memory leak due to improper exception handling

The post discusses a memory leak issue in a Java application running on AWS that caused unresponsiveness after a few hours. Using the yCrash tool, the problem was traced to an anonymous inner class that failed to stop a thread under certain exceptions. The solution involved moving the thread termination code to a 'finally' block, resolving the issue.

Let’s crash the applications! – Confoo 2022

ConFoo Montreal is a conference for developers that encourages knowledge sharing. Architect Ram Lakshmanan presented a session titled "Let's crash the applications!" covering issues like memory leaks, thread leaks, and deadlocks. Understanding these triggers aids in diagnosing and resolving related problems effectively. Slides from the talk are available for reference.

How Cloud Service Provider improves GC pause time by 98.9%

This article discusses the optimization of garbage collection (GC) performance to enhance application response time and reduce cloud costs. Key performance indicators include GC pause time, throughput, and CPU consumption. A successful tuning case involved reducing the young generation size from 20GB to 1GB, significantly improving GC throughput and reducing average pause time.

16 artifacts to capture when there is a production problem -Montreal 2022

ConFoo Montreal is a conference for developers featuring Ram Lakshmanan, who presents on capturing 16 key artifacts during production problems, ranked 5th out of 155 sessions. The session emphasizes the importance of diagnostic information for troubleshooting and discusses effective tools for analyzing captured artifacts. Slide deck available for reference.

How to do GC Log analysis?

Analyzing garbage collection (GC) logs offers benefits such as reduced pause times, lower cloud costs, and improved capacity planning. This post outlines the process of enabling GC logs, the ideal measurement duration and environment, and tools for analysis. Key tools include GCeasy and IBM's GC visualizer for effective optimization.

Flavors of OutOfMemoryErrors

OutOfMemoryError in Java occurs when the JVM cannot allocate memory due to insufficient space in the heap, even after garbage collection. Different types and causes exist, each requiring specific fixes. A one-page document summarizing this information is available, which the author finds visually appealing for display.

Up ↑