jvm相关配置参数:
-server //开启服务端模式,虚拟机启动慢,但运行更加稳定。
-Xms1024m -Xmx1024m //JVM堆内存最小值(初始值),堆内存最大值。优化:建议设置为物理内存的1/4,建议设置成相同的,防止每次GC后调制堆的大小。
-Xmn256m //设置年轻代大小为2G。 优化:年轻代的大小,影响MinorGC发生的频率。年轻代的空间越大,发生MinorGC的频率越低。
-Xss256k //每个线程的栈大小
-XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=256m //元空间的初始化大小(一般默认为64M),元空间的最大值。优化:初始值为最大值的1/4。
-XX:+HeapDumpOnOutOfMemoryError //JVM会在遇到OutOfMemoryError时拍摄一个“堆转储快照”,并将其保存在一个文件中
-XX:HeapDumpPath=/opt/logs/jdk //“堆转储快照”文件保存地址
-verbose:gc //输出虚拟机中GC的详细情况.
-Xloggc:/opt/logs/jdk/gc.log //GC详细情况写入的文件地址
-XX:+PrintGCDetails //打印GC详情
-XX:+PrintGCDateStamps//打印GC时间戳
-XX:+UseParallelGC //jvm在server模式下默认值,使用Parallel Scavenge + Serial Old 的收集器组合。
-XX:+UseParallelOldGC //Parallel Scavenge + Serial Old, 效果比UseParallelGC好。 //追求高吞吐量,更高效的利用CPU资源,适合在后台运算而不需要太多交互的任务。
-XX:+UseConcMarkSweepGC //ParNew + CMS + Serial Old 收集器组合。//追求最短回收停顿时间,给用户更好的体验,主要用于交互比较多的场景,如互联网站或者B/S系统的服务端上。
-XX:+UseG1GC //G1收集器 //相比较超大堆更有优势,比如8G以上,作为CMS的替代品