There are different flavors of OutOfMemoryError. One of the flavours of OutOfMemoryError is ‘Kill Process or sacrifice child’. This post discusses what triggers this ‘Kill Process or sacrifice child’ OutOfMemoryError and potential solutions to diagnose this problem.
Continue reading “OutOfMemoryError: Kill process or sacrifice child – causes & solutions”Video Blog: 7 JVM Arguments of Highly effective applications
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 are shared.
Continue reading “Video Blog: 7 JVM Arguments of Highly effective applications”How Java program executed? – Heap, threads, stack, GC
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 know more.
Continue reading “How Java program executed? – Heap, threads, stack, GC”Chaos Engineering – Simulating OutOfMemoryError
In the series of chaos engineering articles, we have been learning to simulate various performance problems. In this post, let’s discuss how to simulate ‘java.lang.OutOfMemoryError: Java Heap space’ problem. This ‘java.lang.OutOfMemoryError: Java Heap space’ will be thrown by the application when the application generates more objects than the allocated heap size.
Continue reading “Chaos Engineering – Simulating OutOfMemoryError”Java threads – may not be memory effecient?
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 to know whether dormant threads consume less memory than active threads.
To figure out an answer to this question, we conducted a small study. Our findings were interesting, thus sharing with you.
Continue reading “Java threads – may not be memory effecient?”What is GC Log, thread dump and Heapdump?
Java Virtual Machine (JVM) generates 3 critical artifacts that are useful for optimizing the performance and troubleshooting production problems. Those artifacts are:
Continue reading “What is GC Log, thread dump and Heapdump?”7 JVM arguments of Highly Effective Applications
At the time (March 2020) of writing this article there are 600+ arguments that you can pass to JVM just around Garbage collection and memory. If you include other aspects, total JVM arguments count will easily cross 1000+. 😊. It’s way too many arguments for anyone to digest and comprehend. In this article, we are highlighting seven important JVM arguments that you may find it useful.
Continue reading “7 JVM arguments of Highly Effective Applications”All you need to know about System.gc()
In this article, we have attempted to answer the most common questions around System.gc() API call. We hope it may be of help.
Continue reading “All you need to know about System.gc()”LARGE OR SMALL MEMORY SIZE FOR MY APP?
Should I be running my application with few instances (i.e. machines) with large memory size or a lot of instances with small memory size? Which strategy is optimal? This question might be confronted often. After building applications for 2 decades, after building JVM performance engineering/troubleshooting tools (GCeasy, FastThread, HeapHero), I still don’t know the right answer to this question. At the same time, I believe there is no binary answer to this question as well. In this article, I would like to share my observations and experiences on this topic.
Continue reading “LARGE OR SMALL MEMORY SIZE FOR MY APP?”OUTOFMEMORYERROR RELATED JVM ARGUMENTS
JVM has provided helpful arguments to deal with OutOfMemoryError. In this article we would like to highlight those JVM arguments. It might come handy for you when you are troubleshooting OutOfMemoryError. Those JVM arguments are:
Continue reading “OUTOFMEMORYERROR RELATED JVM ARGUMENTS”