`

jvm 参数设置

    博客分类:
  • jvm
 
阅读更多

1: heap size 
a: -Xmx 
指定jvm的最大heap大小,如:-Xmx2g 

b: -Xms 
指定jvm的最小heap大小,如:-Xms1g 

c: -Xmn 
指定jvm中New Generation的大小,如:-Xmn256m 

d: -XX:PermSize 
指定jvm中Perm Generation的最小值,如:-XX:PermSize=32m 

e: -XX:MaxPermSize 
指定Perm Generation的最大值,如:-XX:MaxPermSize=64m 

f: -Xss 
指定线程桟大小,如:-Xss128k 

g: -XX:NewRatio 
指定jvm中Old Generation heap size与New Generation的比例,在使用CMS GC的情况下此参数失效, 如:-XX:NewRatio=2 

h: -XX:SurvivorRatio 
指定New Generation中Eden Space与一个Survivor Space的heap size比例,-XX:SurvivorRatio=8,那么在总共New Generation为10m的情况下,Eden Space为8m 

i: -XX:MinHeapFreeRatio 
指定jvm heap在使用率小于n的情况下,heap进行收缩,Xmx==Xms的情况下无效,如:-XX:MinHeapFreeRatio=30 

j: -XX:MaxHeapFreeRatio 
指定jvm heap在使用率大于n的情况下,heap进行扩张,Xmx==Xms的情况下无效,如:-XX:MaxHeapFreeRatio=70 

k: -XX:LargePageSizeInBytes 
指定Java heap的分页页面大小,如:-XX:LargePageSizeInBytes=128m 

2: garbage collector 
a: -XX:+UseParallelGC 
指定在New Generation使用parallel collector,并行收集,同时启动多个垃圾回收thread,不能和CMS gc一起使用.系统吨吐量优先,但是会有较长长时间的app pause,后台系统任务可以使用此gc 

b: -XX:ParallelGCThreads 
指定parallel collection时启动的thread个数,默认是物理processor的个数,如:-xx:ParallelGCThreads=8 

c: -XX:+UseParallelOldGC 
指定在Old Generation使用parallel collector 

d: -XX:+UseParNewGC 
指定在New Generation使用parallel collector,是UseParallelGC的gc的升级版本,有更好的性能或者优点,可以和CMS gc一起使用 

e: -XX:+CMSParallelRemarkEnabled 
在使用UseParNewGC的情况下,尽量减少mark的时间 

f: -XX:+UseConcMarkSweepGC 
指定在Old Generation使用concurrent cmark sweep gc,gc thread和app thread并行,所以称作concurrent.app pause时间较短,适合交互性强的系统,如web server 

g: -XX:+UseCMSCompactAtFullCollection 
在使用concurrent gc的情况下,防止memory fragmention,对live object进行整理,使memory碎片减少 

h: -XX:CMSInitiatingOccupancyFraction=n 
指示在old generation在使用了n%的比例后,启动concurrent collector,默认值是68,如:-XX:CMSInitiatingOccupancyFraction=70 
有个bug,在低版本的jvm上出现,http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6486089 

i: -XX:+UseCMSInitiatingOccupancyOnly 
指示只有在old generation在使用了初始化的比例后concurrent collector启动收集 

3:others 
a: -XX:MaxTenuringThreshold 
指定一个object在经历了n次young gc后转移到old generation区,在linux64的java6下默认值是15,此参数对于throughput collector无效,如:-XX:MaxTenuringThreshold=31 

b: -XX:+DisableExplicitGC 
禁止java程序中的full gc,如System.gc()的调用 

c: -XX:+UseFastAccessorMethods 
原始类型get,set方法的优化 

d: -XX:+PrintGCDetails 
打应垃圾收集的情况如: 
[GC 15610.466: [ParNew: 229689K->20221K(235968K), 0.0194460 secs] 1159829K->953935K(2070976K), 0.0196420 secs] 

e: -XX:+PrintGCTimeStamps 
打应垃圾收集的时间情况,如: 
[Times: user=0.09 sys=0.00, real=0.02 secs] 

f: -XX:+PrintGCApplicationStoppedTime 
打应垃圾收集时,系统的停顿时间,如: 
Total time for which application threads were stopped: 0.0225920 seconds 

4  -XX:+UseCompressedOops 
    压缩指针  64位机器,JDK1.6支持

 

-XX:+UseCMSCompactAtFullCollection:使用并发收集器时,开启对年老代的压缩。

 

-XX:CMSFullGCsBeforeCompaction=0:上面配置开启的情况下,这里设置多少次Full GC后,对年老代进行压缩

 

 

常用配置

1.响应时间优先

  -Xmx2G -Xms2G -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=true -Xloggc:gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

 

 -Xmx4g -Xms4g -Xmn2g -XX:PermSize=256m -XX:SurvivorRatio=4 -XX:MaxTenuringThreshold=20 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiat

ingOccupancyFraction=70 -XX:CMSFullGCsBeforeCompaction=5 -XX:+HeapDumpOnOutOfMemoryError   -verbose:gc -XX:+UseCMSCompactAtFullCollection -XX:CMSMaxAbortablePrecleanTime=5000 -XX:+DisableExplicitGC -XX:+PrintGCDetails -Xlog:gc.log

 

分享到:
评论

相关推荐

    jvm参数设置_JVM参数设置_

    JVM参数设置,提供java虚拟机运行时的参数设置

    JVM参数设置详细说明

    JVM参数设置详细说明、JVM 参数设置详细说明 1: heap size a: -Xmx 指定jvm的最大heap大小,如:-Xmx=2g b: -Xms 指定jvm的最小heap大小,如:-Xms=2g,高并发应用,建议和-Xmx一样,防止因为内存收缩/突然增大带来...

    jvm参数设置

    linux 下jvm基本参数设置 查看linux jvm的设置基本命令

    JVM参数设置

    通过设置JVM的参数设置,可以提高系统的稳定性与效率

    JVM 参数设置详解

    This document is a compilation of all the JVM options for various versions of the JVM on primarily SPARC/Solaris Platform. The descriptions for each option are taken mostly verbatim from the reference...

    myeclipsejava虚拟机jvm参数设置

    在使用MyEclipse的过程中经常出现内存不足的提示: MyEclipse has detected that less than 5% of the 31MB of Eden Space (Heap memory) space remains. It is strongly recommended that you exit and restart ...

    eclipse中对jvm进行设置

    你对Eclipse中JVM内存设置方法是否熟悉,这里通过几个问题向大家解释一下,安装Java开发软件时,默认安装包含两个文件夹,一个JDK(Java开发工具箱),一个JRE(Java运行环境,内含JVM),其中JDK内另含一个JRE。

    was使用及参数设置

    was使用及参数设置 was使用及参数设置 was使用及参数设置

    如何配置jvm参数,调优

    如何配置jvm参数,并且调优,适合各路开发者,

    JVM入门实战/arthas实战/垃圾回收算法/垃圾回收器/jvm内存模型分析

    本系列课程从JVM基础到高级实战,老师手把手教你如何进行JVM...1.3JVM参数设置思路1.4JVM调优常用指令说明 第七节:JVM项目实战 1.1案例背景 1.2排查步骤 1.3.arthas 1.3.1.arthas简介 1.3.2.arthas实战 1.3总结

    设置Eclipse的JVM参数

    设置Eclipse的JVM参数

    java学习之JVM调优相关说明

    将机器的JVM参数设置到最优 一般的Java都不需要进行JVM优化 减少代码层面造成的GC问题(STW) 减少使用全局变量、大对象以及减少创建对象的数量 通过代码解决GC情况比优化JVM参数更好 架构和代码调优等级优先于JVM...

    tomcat6.0 修改启动内存设置 java jvm参数配置

    在/usr/local/apache-tomcat-5.5.23/bin目录下的catalina.sh 添加:JAVA_OPTS='-Xms512m -Xmx1024m' 要加“m”说明是MB,否则就是KB了,在启动tomcat时会报内存不足。 -Xms:初始值 ...重起tomcat服务,设置生效

    关键业务系统JVM参数推荐

    常用的JVM参数,适合于线上关键业务系统,通用参数设置经验

    jvm 参数调优实践

    jvm 参数调优实践,有代码可供参考,详细调优比较!

    JVM性学习笔记-基本原理,内存模型,JVM参数

    JVM性学习笔记-基本原理,内存模型,JVM参数设置,类加载器原理,JDK自带工具

    JVM 参数详解-基于jdk1.7

    (中英文)JVM 参数详解,用心整理成Excel文档。包含所有近100条JVM参数的详细说明及设置方法,中英文对照,极方便阅读。转载请标明我这的源地址:http://download.csdn.net/download/xiucaiyao/10257573

    JVM常用参数设置

    NULL 博文链接:https://ajita.iteye.com/blog/1985134

    jvm参数与系统性能的优化

    可通过设置jvm参数,提高系统性能。内含一些系统原理。

    常用JVM配置参数.ppt

    常用JVM配置参数.ppt

Global site tag (gtag.js) - Google Analytics