JVM PermGen Space

JVM PermGen Space

JVM Permanent Generation is where most current JVM store class files (some of which are loaded when your app starts, some dynamically as your app runs). For healthy apps the permgen usage can grow a bit - but should then stop growing at some point, if it does grow too much - you will see an out of memory exception in your application which mentions Permgen space (at which point your application will be restarted).

For most applications - the default is fine - however some frameworks (like spring, hibernate) will use a bit more space and may require some more. The Grails framework specifically now recommends 256Meg permgen space.

The default JVM PermGen space can be changed at deployment time with the CloudBees SDK using the "bees app:deploy" command.