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... Continue Reading →
There are a good number of articles that articulate functional differences between HashMap, HashTable and ConcurrentHashMap. This post compares the performance behavior of these data structures through practical examples. If you don't have patience to read the entire post, here... Continue Reading →
'java.lang.System.getProperty()' is a common API used by Java developers to read the System properties that are configured during application startup time. i.e. when you pass "-DappName=buggyApp" as your application's startup JVM argument, the value of the 'appName' system property can... Continue Reading →
Naveen Kumar Namachivayam from QAInsights Invited Ram Lakshmanan - The architect of yCrash to talk in the Performance Engineers Clubhouse. In this video, the basics of Garbage collection, Importance of Memory, GC Throughput Introduction and many other topics have been... Continue Reading →
You can pass 600+ arguments to JVM just around Garbage collection and memory. It’s way too many arguments for anyone to digest and comprehend. In all these 4 videos, 7 important JVM arguments that will boost your Java/Scala/Jython application performances... Continue Reading →
What happens behind the scene when a java program is executed? In which regions objects are created? When objects become eligible for garbage collection? Where are threads stored? What is the difference between Stack and Heap? Watch this video to... Continue Reading →
In this series of chaos engineering articles, let's discuss how to simulate CPU consumption to spike up to 100% on a host (or container). CPU consumption will spike up whenever a thread goes on an infinite loop. Here is a... Continue Reading →
Java applications tend to contain hundreds (sometimes thousands) of threads. The majority of these threads are in WAITING, TIMED_WAITING (i.e., dormant) state, while only a small portion of the threads are actively executing lines of code. So, we were curious... Continue Reading →
Java Virtual Machine (JVM) generates 3 critical artifacts that are useful for optimizing the performance and troubleshooting production problems. Those artifacts are: Garbage collection (GC) log Thread Dump Heap Dump In this article let us try to understand these 3... Continue Reading →