JAVA_OPTS="$JAVA_OPTS -server -Xms1024m -Xmx1024m -Xss512k -XX:PermSize=128m -XX:MaxPermSize=256m -XX:ParallelGCThreads=8
-server:一定要作为第一个参数,在多个CPU时性能佳
-Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些
-Xmx:java heap最大值,使用的最大内存
-Xmn:young generation的heap大小,一般设置为Xmx的3、4分之一
上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半,最大不超过物理内存的80%
-XX:PermSize:设定内存的永久保存区域
-XX:MaxPermSize:设定最大内存的永久保存区域
上面两个值不会被GC清除
-Xss512K: 每个线程的Stack大小,这使得JBoss每增加一个线程就会立即消耗512K内存
+XX:AggressiveHeap:会使得 Xms没有意义。这个参数让jvm忽略Xmx参数,不断的消耗物理内存以及SWAP,直到消耗殆尽,一般不建议使用
-XX:+UseConcMarkSweepGC:缩短major GC(对Tenured Generaion的GC)的时间(此选项在Heap Size 比较大而且Major收集时间较长的情况下使用更合适)
-XX:+UseParNewGC:缩短minor GC(对young generation的GC)的时间
XX:+UseParallelGC:选择垃圾收集器为并行收集器。此配置仅对young generation有效。即上述配置下,young generation使用并发收集,而Tenured Generaion仍旧使用串行收集。
-XX:ParallelGCThreads=8:配置并行收集器的线程数,即:同时多少个线程一起进行垃圾回收。此值最好配置与处理器数目相同"