Webapp JVM

The default configuration for indexing and searching applications (as shown below) are based on a 1GB heap (-Xmx1024m -Xms1024m) configuration. It is for this default configuration that the below JVM options and Heap configuration is specified.

The specific recommended (tested against) JVM options for searching and indexing are listed below (jdk7 - the following options WILL NOT work on jdk6). The JVM options slightly differ between searching and indexing. The common options are listed and then the differences listed:

Common options for both Web Applications

-XX:+UnlockDiagnosticVMOptions
-XX:CMSInitiatingOccupancyFraction=85
-XX:MaxTenuringThreshold=15
-XX:CMSWaitDuration=70000    
-XX:MaxPermSize=128m
-XX:ParGCCardsPerStrideChunk=4096
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:+UseCMSInitiatingOccupancyOnly        
-XX:+AggressiveOpts
-XX:+UseCondCardMark
-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector

Below shows the heap configuration for indexing and search. The difference between the two is that of the eden space.

Searching Heap

-Xmx1024m
-Xmn700m
-Xms1024m
-Xss256k

Indexing Heap

-Xmx1024m
-Xmn256m
-Xms1024m
-Xss256k