Java String intern: Performance impact

java.lang.String#intern() is an interesting function in Java. When used at the right place, it has potential to reduce overall memory consumption of your application by eliminating duplicate strings in your application. To learn how intern() function works, you may refer to this blog. In this post let's discuss the performance impact of using java.lang.String#intern() function... Continue Reading →

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 →

Java String intern(): Interesting Q & A

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. In this post, let's learn more about this intern() function. 1. How does the String intern() function work?  In Java heap memory, a pool of string objects... 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 →

Troubleshooting Microservice’s OutOfMemoryError: Metaspace

Recently we confronted an interesting 'java.lang.OutOfMemoryError: Metaspace' problem in a Microservice application. This Microservice application will run smoothly for initial few hours, later it will start to throw java.lang.OutOfMemoryError: Metaspace. In this post let me share the steps we pursued to troubleshoot this problem. Different types of OutOfMemoryError JVM memory has following regions:  a. Young... Continue Reading →

Troubleshooting HTTP 502 bad gateway in AWS EBS 

The application that we are going to discuss in this post was running on Elastic Beanstalk (EBS) service in Amazon Web Services (AWS). Intermittently this application was throwing HTTP 502 Bad Gateway error. In this post, let’s discuss how we troubleshooted and resolved this HTTP 502 bad gateway error in Elastic Beanstalk service. AWS Elastic... Continue Reading →

JVM c1, c2 compiler thread – high CPU consumption?

c1, c2 compiler threads are created by Java virtual machine to optimize your application's performance. Occasionally these threads will tend to consume high CPU. In this post, let’s learn little more about c1, c2 compiler threads and how to address their high CPU consumption. After reading this post, terminologies like Hotspot JIT, c1 compiler threads,... Continue Reading →

Java class loading – performance impact!

java.lang.ClassLoader#loadClass() API is used by 3rd party libraries, JDBC Drivers, frameworks, application servers to load a java class into the memory. Application developers don’t use this API frequently. However when they use the APIs such as ‘java.lang.Class.forName()’ or ‘org.springframework.util.ClassUtils.forName()’, they internally call this 'java.lang.ClassLoader#loadClass()' API. Frequent usage of this API amongst different threads at runtime... 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 →

Powered by WordPress.com.

Up ↑