cat /u01/ocastomcat/tomcat/apache-tomcat-9.0.65/bin/setenv.sh
#java.awt.headles=strue
export CATALINA_OPTS="$CATALINA_OPTS -Djava.awt.headless=true"
#export CATALINA_OPTS="$CATALINA_OPTS -Xms24576m"
#export CATALINA_OPTS="$CATALINA_OPTS -Xmx24576m"
#export CATALINA_OPTS="$CATALINA_OPTS -Xms8g -Xmx16g"
### ================================
### Memory & Heap Settings
### ================================
export CATALINA_OPTS="$CATALINA_OPTS -Xms32g"
export CATALINA_OPTS="$CATALINA_OPTS -Xmx48g"
# Why? Large application benefits from higher initial heap for stability.
### ================================
### Garbage Collector (G1)
### ================================
export CATALINA_OPTS="$CATALINA_OPTS -XX:+UseG1GC"
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxGCPauseMillis=200"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+ParallelRefProcEnabled"
### ================================
### Heap Region Tuning (for 16–32GB heaps)
### ================================
export CATALINA_OPTS="$CATALINA_OPTS -XX:G1HeapRegionSize=32m"
### ================================
### Metaspace Tuning (large WAR needs more)
### ================================
export CATALINA_OPTS="$CATALINA_OPTS -XX:MetaspaceSize=512m"
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxMetaspaceSize=2048m"
### ================================
### JVM Startup Optimization
### ================================
export CATALINA_OPTS="$CATALINA_OPTS -XX:+AlwaysPreTouch"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+DisableExplicitGC"
# --------------------------------
# Heap Dump on OutOfMemoryError
# --------------------------------
export CATALINA_OPTS="$CATALINA_OPTS -XX:+HeapDumpOnOutOfMemoryError"
export CATALINA_OPTS="$CATALINA_OPTS -XX:HeapDumpPath=/u01/ocastomcat/tomcat/apache-tomcat-9.0.65/heapdump"
# --------------------------------
# GC Logging (Java 8 syntax)
# --------------------------------
export CATALINA_OPTS="$CATALINA_OPTS -XX:+PrintGCDetails"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+PrintGCDateStamps"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+PrintTenuringDistribution"
export CATALINA_OPTS="$CATALINA_OPTS -Xloggc:/opt/tomcat/logs/gc.log"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+UseGCLogFileRotation"
export CATALINA_OPTS="$CATALINA_OPTS -XX:NumberOfGCLogFiles=10"
export CATALINA_OPTS="$CATALINA_OPTS -XX:GCLogFileSize=100M"
Example: Production Tomcat (Java 8)
Add to setenv.sh:
No comments:
Post a Comment