jvm启动参数介绍

1,300 阅读2分钟

经常远程连接服务器进行问题排查,基本的一些排查技巧肯定多少得懂点,今天讲讲转储文件排查,先来讲讲JVM的一些参数吧。

每当我们ps -ef | grep 会出现一堆信息,但是我们真的都知道信息的具体含义吗还是只知道一点呢?

参数 默认 功能 -XX:-AllowUserSignlHandlers 允许为java的进程安装信号处理器,信号处理参见类:sun.misc.Signal,sun.misc.SignalHandler -Xms3g 物理内存的1/64 初始堆大小 -Xmx3g 物理内存的1/4 最大堆大小 -Xmn 年轻代大小(整个堆大小=年轻代大小+老年代大小+持久代大小) -XX:PermSize 物理内存的1/64 持久代大小 -XX:MaxPermSize参数 物理内存的1/4 持久代最大值 -XX:+新尺寸 年轻代大小 -XX:+ MaxNewSize 年轻带最大值 -XX:SurvivorRatio 设置为8,则两个幸存者区与一个伊甸区的比值为2:8,一个幸存者区占整个年轻代的1/10 伊甸区与幸存者区的大小比值 -Xloggc:文件名 把相关日志记录到文件以便分析 -XX:+ PrintGCDateStamps

-XX:+ PrinGCDetails GC输出形式 -XX:+ UseConcMarkSweepGC 使用CMS内存收集 -XX:+ UseCMSCompactAtFullCollection 在完全gc的时候,对老年代进行压缩 -XX:+ CMSClassUnloadingEnabled 降低标记停顿 -XX:+ DisabledExplicitGC 关闭System.gc()的 -XX:+ CMSInitiatingOccuoancyFraction 使用CMS作为垃圾回收,使用70%后开始垃圾收集 -XX:+ HeapDumpOnOutOfMemoryError 开启JVM内存溢出的错误收集 -XX:+ HeapDumpPath 定义转储文件输入路径 -Dcom.sun.management.jmxremote 自定义设置系统参数 -Dcom.sun.management.jmxremote.ssl 自定义设置系统参数 -Dcom.sun.management.jmxremote.authenticate 自定义设置系统参数 -Dcom.sun.management.jmxremote.port 自定义设置系统参数 -Djava.rmi.server.hostname 自定义设置系统参数 -Djetty.state 自定义设置系统参数 -Djetty.port 自定义设置系统参数 -Djetty.home 自定义设置系统参数 -Djava.io.tmpdir 自定义设置系统参数 -罐 在这里通过/jetty/start.jar启动应用程序