Java Heap, Architecture and GC


  • The Java heap is the amount of memory allocated to applications running in the JVM. 
  • Garbage collection (GC) refers to the automatic process of managing the run time memory. 
  • The JVM is subject to GC pauses that vary in frequency and duration; if these pauses become more frequent and/or last longer, you will see issues (such as application pauses) which indicate that you may need to tune your Java heap. 
  • The heap is initially created when the JVM starts and is split into different spaces or generations, the key ones being Young (Eden or Nursery) and Tenured (Old)

  • Key symptoms that indicate you need to tune your Java heap are:
  • High CPU usage. When GC threads consume a lot of CPU, you will see spikes in overall CPU usage.
  • Application hangs. When your application appears to hang and stops responding, there are gaps in your log files or you experience general slowness when performing routine tasks, poorly tuned GC can be the cause.

Comments

Popular posts from this blog

Welcome to my Performance Testing and Engineering Blog

JMeter Distributed Testing in Linux