In which region intern strings are stored?

intern() is an interesting function in java.lang.String object. intern() function eliminates duplicate string objects from the application and has potential to reduce overall memory consumption of your application. To understand how string intern() function works you may refer to this interesting blog. Intern strings are stored in a string pool in the JVM memory. JVM... Continue Reading →

Inspect the contents of the Java Metaspace region

JVM Memory has following regions: a. Young Generation b. Old Generation c. Metaspace d. Others region Fig: JVM memory regions To see what objects are stored in what region, you may refer to this video clip. Sometimes your application might run into 'java.lang.OutOfMemoryError: Metaspace' as discussed in this post. In such circumstances you might want... Continue Reading →

“Learn yCrash” series

The industry has seen cutting-edge Application Performance Monitoring tools and infrastructure monitoring tools. These monitoring tools are great at answering the question: 'What is the problem?'' but not, Why does the problem happen? yCrash attempts to answer this question. It captures 360-degree artifacts from your technology stack such as Garbage collection logs, thread dumps, heap dumps,... Continue Reading →

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

When we launch applications, we specify the initial memory size and maximum memory size. For the applications that run on JVM (Java Virtual Machine), initial and maximum memory size is specified through ‘-Xms’ and ‘-Xmx’ arguments. If Java applications are running on containers, it's specified through ‘-XX: InitialRAMPercentage’ and ‘-XX: MaxRAMPercentage’ arguments. Most enterprises set... Continue Reading →

Memory leak due to improper exception handling

In this post let's discuss an interesting memory problem we confronted in the production environment and how we went about solving it. This application would take traffic for a few hours after that it would become unresponsive. It wasn't clear what was causing the unresponsiveness in the application. Memory leak issues due to improper exception... Continue Reading →

Java UUID generation – Performance impact

Java developers tend to use 'java.util.UUID#randomUUID()' API, to generate a UUID (Universally Unique Identifier) number (i.e., 'b8bbcbed-ca07-490c-8711-5118ee0af2f9'). Under certain circumstances, using this API can affect your application’s availability. Let’s discuss this API in this post with a real-world example. Performance impact on Java UUID generation How does  'java.util.UUID#randomUUID()' API works? java.util.UUID#randomUUID() API internally uses... Continue Reading →

Powered by

Up ↑