最近看了有关虚拟机的书籍,发现有很多虚拟机配置参数不知道,特来记录一下,

-XX: MaxDirectMemorySize--->设置直接内存,不设置与Java堆内存最大值一致

-XX:PermSize(老年代大小)和-XX:MaxPermSize(永久代大小)--->设置方法区大小

-Xoss--->设置本地方法栈大小(实际无效,栈容量只由-Xss设定)

-XX:+HeapDumpOnOutOfMemoryError--->生成内存溢出快照(查看内存溢出快照的工具,安装JDK时,有自带了几种工具,具体怎么使用百度、谷歌)

-XX:+/-UseTLAB--->设置是否使用本地线程分配缓冲

-XX:-Xmx和-Xms--->设置堆内存(也是最常见的)

-XX:+UseLWPSynchronization(默认值)和-XX:+UseBoundThreads---->设置虚拟机使用线程模型

-XX:+UseSpinning--->设置是否启动自旋锁

-XX:PreBlockSpin--->设置自旋锁的次数

-XX:+UseBiasedLocking--->设置设置虚拟机启用偏向锁(JDK1.6的默认值)

-XX:+UseCompressedOops--->对象指正压缩功能(这个还待确认)

-XX:+TraceBytecodes和-XX:StopOmterpreterAt=<n>--->HotSpot虚拟机下设置断点调试

-verbose:class-以及-XX:+TraceClassLoading、-XX:+TreaceClassUnLoading--->查看类加载和卸载信息(HotSpot)//这个目前没弄明白 - =

-XX:UseConcMarkSweepGC--->默认新生代收集器

-XX:+UseParNewGC--->强制指定新生代收集器

-XX:ParallelGCThreads--->设置垃圾收集的线程数(ParNew收集器)

-XX:GCTimeRatio--->设置吞吐量大小[以整数为单位,默认99](ParallelScavenge收集器)

-XX:MaxGCPauseMillis--->设置最大垃圾收集器停顿时间[以毫秒为单位](ParallelScavenge收集器)

-XX:+UseAdaptiveSizePolicy--->是否开启自动指定新生代大小、Eden与Survivor区的比例(-XX:SurvivorRatio)、晋升老年代对象大小(-XX:PretenureSizeThreshold)等细节(ParallelScavenge收集器)

-XX:CMSInitiatingOccupancyFraction--->控制CMS收集器的预留空间

-XX:CMSFullGCsBeforeCompaction--->设置执行多少次不压缩后在进行一次压缩(针对于CMS算法所产生的空间碎片,这里的压缩是指对内存的空间碎片进行合并整理过程)

-XX:MaxGCPauseMillis--->设置GC最低的最大允许GC时间(单位毫秒)

-XX:SurvivorRatio--->设置新生代中Eden区与一个Survivor区的空间的比例

-XX:+PrintGCDetails--->打印GC信息

-XX:PretenureSizeThreshold--->设置大于该值的对象直接在老年代分配(不能像配置Java堆一样直接写多少M)

-XX:MaxTenuringThreshold--->设置对象晋升老年代的年龄阈值

-XX:HandlePromotionFailure--->设置空间分配担保

-XX:+PrintGCApplicationStoppedTime -XX:+printGCDateStamps -Xlogc:gclog.log--->在日志中打印GC停顿时间

-Dsun.awt.keepWorkingSetOnMinimize=true---->设置程序在恢复最小化时立即响应

-Xverify:none--->禁止对字节码校验过程(只针对限定大部分的验证)

-Xint--->禁止编译器运作

-XX:+PrintGCTimeStamps--->打印GC停顿时间

-XX:+PrintGCDetails--->打印GC详细信息

-verbose:gc--->打印GC信息,输出内容与-XX:+PrintGCDetails一样

-Xloggc:gc.log--->生成gc日志文件

-XX:+DisableExplicitGC--->屏蔽掉System.gc()

-XX:+UseConcMarkSweepGC、-XX:+UseParNewGC(配置虚拟机使用ParNew收集器[ParNew收集器是使用CMS收集器后的默认新生代收集器,配置上仅为了更加清晰])--->配置虚拟机使用CMS收集器

-XX:+TraceClassLoading-->设置观察到此操作会导致子类的加载

-XX:UseSplitVerifier-->关闭在虚拟机对StackMapTable的验证

-XX:+FailOverToOldVerifier-->设置在对字节码类型校验失败的时候退回到旧的类型推到方式进行校验

-Xbootvlasspath-->指定启动类加载器的路径

-Xcomp:强制虚拟机运行于“编译模式”(最新的Sun HotSpot已经去掉了Xcomp)

-Xint:强制虚拟机运行于“解释模式”

-version:输出虚拟机执行模式

-client:强制制定虚拟机运行在client模式

-server:强制虚拟机运行在server模式

-XX:CompileThreshold:设置虚拟机运行模式的调用计数阈值(基于计数器的热点探测,client默认阈值是1500,server默认的阈值是1000)

-XX:-UseCounterDecay:关闭热度衰减

-XX:CounterHalfLifeTime:设置热度衰减周期的时间

-XX:BackEdgeThreshold:设置虚拟机运行模式的调用计数阈值

-XX:OnStackReplacePercentage:间接调整回边计数器的阈值(目前的虚拟机实际上并未使用-XX:BackEdgeThreshold参数,默认值是933)

-XX:-BackgroundCompilation:禁止后台编译

-XX: +PrintCompliation:要求虚拟机在集市编译时将被编译成本地代码的方法名称打印出来

-XX: +PrintInlining:要求虚拟机输出方法内联信息

-XX: +PrintAssembly:要求虚拟机打印编译方法的汇编代码

-XX: +PrintOptoAssembly:输入比较接近最终结果的中间代码(用于Server VM )

-XX: +PrintLIR:输入比较接近最终结果的中间代码(用于Client VM )

-XX: +PrintCFGToFile:要求虚拟机将编译过程各个阶段的数据输出到文件中(Client Compiler)

-XX: +PrintIdealGraphFile:要求虚拟机将编译过程各个阶段的数据输出到文件中(Server Compiler)

-XX: +UnlockDiagnosticVMOptions:与-XX: +PrintAssembly一样,Product版虚拟机(需要打开虚拟机诊断模式)

-XX: +PrintIdealGraphLevel=2 -XX: +PrintIdealGraphFile=indeal.xml:编译后产生一个名为ideal.xml的文件,文件包含了Server Compiler编译代码的过程信息

-XX: +DoEscapeAnalysis:手动开启逃逸分析

-XX: +PrintEscapeAnalysis:打印逃逸分析结果

-XX: +EliminateAllocations:开启标量替换

-XX: +PrintEliminateAllocations:打印标量替换信息

-XX: +EliminateLocks:开启同步消除

目前只看到过这些,如有不足、不对的地方,还请各位大神指出和甩砖..谢谢~~

JVM配置参数详解(目前不够完善)的更多相关文章

  1. JVM配置参数详解

    记录一下jvm中的一些配置参数,这些肯定不全的,希望你们能留个言,补全一下,谢谢啦! -XX: MaxDirectMemorySize--->设置直接内存,不设置与Java堆内存最大值一致 -X ...

  2. mha配置参数详解

    mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...

  3. reids配置参数详解

    转自:http://www.jb51.net/article/60627.htm reids配置参数详解 #daemonize no  默认情况下, redis 不是在后台运行的,如果需要在后台运行, ...

  4. nginx配置参数详解

    配置参数详解 user nginx nginx ; Nginx用户及组:用户 组.window下不指定 worker_processes 8; 工作进程:数目.根据硬件调整,通常等于CPU数量或者2倍 ...

  5. Redis配置参数详解

    Redis配置参数详解 /********************************* GENERAL *********************************/ // 是否作为守护进 ...

  6. MHA配置参数详解 【转】

    mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...

  7. zookeeper的配置参数详解(zoo.cfg)

    配置参数详解(主要是%ZOOKEEPER_HOME%/conf/zoo.cfg文件) 参数名 说明 clientPort 客户端连接server的端口,即对外服务端口,一般设置为2181吧. data ...

  8. HAproxy 配置参数详解

    HAproxy 配置参数详解 /etc/haproxy/haproxy.cfg # 配置文件 ----------------------------------------------------- ...

  9. samba 配置参数详解

    samba 配置参数详解: 一.全局配置参数  workgroup = WORKGROUP说明:设定 Samba Server 所要加入的工作组或者域. server string = Samba S ...

随机推荐

  1. 使用GDAL工具对FY3系列卫星数据进行校正

    本文档主要对如何使用GDAL提供的工具对FY3系列卫星数据进行校正处理.FY3系列卫星提供的数据一般是以HDF5格式下发,一个典型的FY3A和FY3B的数据文件名如下: FY3A_MERSI_GBAL ...

  2. SpriteBuilder中不能编辑自定义类或不能给节点添加属性的解决

    不能编辑自定义类 你选中一个Sub File(CCBFile)节点,在这个例子中,该节点的Custom class区域灰化禁用且不能修改.这是因为你需要在该Sub File引用的CCB文件中修改Cus ...

  3. SpriteBuilder中如何给精灵添加帧动画

    首先你必须准备若干幅图片,当然最好做成Smart Sprite Sheet. 打开一个CCB文件,并鼠标选择根节点的CCSprite对象. 保持前者选中且Timeline的当前时间点把手在最左边,然后 ...

  4. mongodb系列之--mongodb 主从配置与说明

    一.为什么要配置mongodb的主从: 1.做主从,可以说是做数据的备份,有利于故障的恢复 2.做主从,可以做到读写分离,主节点负责写操作,从节点负责读操作,这样就把读写压力分开,保证系统的稳定性. ...

  5. 网站开发进阶(八)tomcat异常日志分析及处理

    tomcat异常日志分析及处理 日志信息如下: 2015-10-29 18:39:49 org.apache.coyote.http11.Http11Protocol pause 信息: Pausin ...

  6. Auto Create Editable Copy Font(Unity3D开发之二十二)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/48318879 ...

  7. sqlserver2008中删除了windows用户,导致无法登陆的解决方案

    打开管理工具中的"服务",找到并关闭SQL Server服务.进入命令进入SQL Server 2008的安装目录,找到sqlservr.exe文件,执行命令:sqlservr - ...

  8. OpenCV图片矩阵操作相关,对png图片操作(多通道)

    文献链接: http://www.cnblogs.com/tornadomeet/archive/2012/12/26/2834336.html 下面这个高手,写了个小程序我还没有调试,回头 调试看看 ...

  9. EBS R12安装升级(FRESH)(二)

    3 Linux系统设置 这一节步骤基本都在终端root用户下进行. 自行熟悉vi或其他文本工具的用法. 3.1 host-only外网连接 如果用的NAT模式这一节略过. 右击当前主机连接外网的网卡, ...

  10. myBatis源码学习之SqlSessionFactory

    上一篇博客 SqlSessionFactoryBuilder 中介绍了它的作用就是获得DefaultSqlSessionFactory SqlSessionFactory是一个接口,其具体实现类是De ...