Eazy
Eazy

Reputation: 3472

Jboss eap 5.1 GC JMV options

I'am using Jboss eap 5.1 with Seam Framework. I want to tune my GC to avoid FullGC. I already using CMS GC. This will be my next configuration on production system:

-Xms24g
-Xmx24g
-XX:+UseCompressedOops
-XX:NewRatio=4 
-XX:SurvivorRatio=8    
-XX:+UseConcMarkSweepGC 
-XX:+UseParNewGC 
-XX:+DisableExplicitGC  
-XX:+UseCMSInitiatingOccupancyOnly 
-XX:+CMSClassUnloadingEnabled  
-XX:+CMSScavengeBeforeRemark 
-XX:CMSInitiatingOccupancyFraction=68

My question is "Do I need to remove this JVM options"?:

-Dsun.rmi.dgc.client.gcInterval=3600000
-Dsun.rmi.dgc.server.gcInterval=3600000

if I will add this one:

-XX:+DisableExplicitGC

or they must stay together?

Upvotes: 4

Views: 454

Answers (1)

Aleš
Aleš

Reputation: 9028

You can have both sets of the options enabled. But, the -XX:+DisableExplicitGC will prevent any SystemGC calls coming from the RMI sessions.

The recommended use is either to disable SystemGC alltogether by using -XX:+DisableExplicitGC or at least use the sun.rmi.dgc.*.gcInterval flags to control the frequency of the System GC calls (to prevent the SystemGC to occur too often).

I would suggest using the -XX:+DisableExplicitGC and observing whether the number of "dead" RMI objects is growing, if yes, then you need to start tuning with the sun.rmi.dgc.*.gcInterval flags.

This is all provided that you really want to avoid Full GC, perhaps tolerating a short pause Full GC would not be such a bad idea since you will need them to clean the RMI objects anyway.

Upvotes: 1

Related Questions