jvm的一些参数配置

Trace跟踪参数
==============
打印GC的简要信息
-verbose:gc
-XX:+PrintGC
打印GC详细信息
-XX:+PrintGCDetails
打印GC发生的时间戳
-XX:+PrintGCTimeStamps
指定GC log的位置,以文件输出,帮助开发人员分析问题
-Xloggc:log/gc.log
每次一次GC后,都打印堆信息
-XX:+PrintHeapAtGC
监控类的加载
-XX:+TraceClassLoading
-XX:+PrintClassHistogram
    -按下Ctrl+Break后,打印类的信息
    -分别显示:序号 实例数量 总大小 类型
堆的分配参数
============================
指定最大堆和初始堆大小
-Xmx -Xms
设置新生代大小
-Xmn
-XX:NewRatio
    -新生代(eden+2*s)和老年代(不包含永久区)的比值
    -4表示新生代:老年代=1:4 即年轻代占堆的1/5
-XX:SurvivorRatio
    -设置两个Survivor和eden的比
    -8表示两个Survivor:eden = 2:8 即1个Survivor占年轻代的1/10
-XX:+HeapDumpOnOutOfMemoryError
    -OOM时导出堆到文件
-XX:+HeapDumpPath
    -导出OOM的路径
-XX:OnOutOfMemoryError
    -在OOM时,执行一个脚本
    -XX:OnOutOfMemoryError=C:\Program Files\Java\jdk1.8.0_101\bin\printstack.bat %p
        脚本中的内容:C:\Program Files\Java\jdk1.8.0_101\bin\jstack -F %1 >D:\a.txt
    -当程序OOM时,在D:\a.txt中将会生成线程的dump
    -可以再OOM时,发送邮件,甚至是重启程序
堆分配参数总结
    -根据实际情况调整新生代和幸存代的大小
    -官方推荐新生代占堆的3/8
    -幸存代占新生代的1/10
    -在OOM时,记得Dump出堆,确保可以排查现场问题
永久区分配参数
-XX:PermSize -XX:MaxPermSize(java8中已取消永久区)
    -设置永久区的初始空间和最大空间
    -他们表示,一个系统可以容纳多少个类型
栈大小分配
-Xss
    -通常只有几百k
    -决定了函数调用的深度
    -每个线程都有独立的栈空间
    -局部变量 参数分配在栈上

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值