知识大全 专家指导 如何进行JVM参数配置

Posted 何进

篇首语:家资是何物,积帙列梁梠。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 专家指导 如何进行JVM参数配置相关的知识,希望对你有一定的参考价值。

专家指导 如何进行JVM参数配置  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

    本文将教大家如何进行JVM参数配置 JVM提供了大量命令行参数 大家可以将本文打印下来作为资料备查 最后还将为大家讲解如何进行调优 相信你一定会感兴趣的         高手教大家如何进行JVM参数配置        堆大小设置        JVM中最大堆大小有三方面限制 相关操作系统的数据模型( bt还是 bit)限制 系统的可用虚拟内存限制 系统的可用物理内存限制 位系统下 一般限制在 G~ G; 为操作系统对内存无限制 我在WindowsServer 系统 G物理内存 JDK 下测试 最大可设置为 m         典型JVM参数配置         java Xmx m Xms m Xmn g Xss k        Xmx m:设置JVM最大可用内存为 M         Xms m:设置JVM促使内存为 m 此值可以设置与 Xmx相同 以避免每次垃圾回收完成后JVM重新分配内存         Xmn g:设置年轻代大小为 G 整个堆大小=年轻代大小+年老代大小+持久代大小 持久代一般固定大小为 m 所以增大年轻代后 将会减小年老代大小 此值对系统性能影响较大 Sun官方推荐配置为整个堆的 /         Xss k:设置每个线程的堆栈大小 JDK 以后每个线程堆栈大小为 M 以前每个线程堆栈大小为 K 更具应用的线程所需内存大小进行调整 在相同物理内存下 减小这个值能生成更多的线程 但是操作系统对一个进程内的线程数还是有限制的 不能无限生成 经验值在 ~ 左右         java Xmx m Xms m Xss k        XX:NewRatio= XX:SurvivorRatio=         XX:MaxPermSize= m XX:MaxTenuringThreshold=         XX:NewRatio= :设置年轻代(包括Eden和两个Survivor区)与年老代的比值(除去持久代) 设置为 则年轻代与年老代所占比值为 : 年轻代占整个堆栈的 /         XX:SurvivorRatio= :设置年轻代中Eden区与Survivor区的大小比值 设置为 则两个Survivor区与一个Eden区的比值为 : 一个Survivor区占整个年轻代的 /         XX:MaxPermSize= m:设置持久代大小为 m         XX:MaxTenuringThreshold= :设置垃圾最大年龄 如果设置为 的话 则年轻代对象不经过Survivor区 直接进入年老代 对于年老代比较多的应用 可以提高效率 如果将此值设置为一个较大值 则年轻代对象会在Survivor区进行多次复制 这样可以增加对象再年轻代的存活时间 增加在年轻代即被回收的概论         回收器选择        JVM给了三种选择 串行收集器 并行收集器 并发收集器 但是串行收集器只适用于小数据量的情况 所以这里的选择主要针对并行收集器和并发收集器 默认情况下 JDK 以前都是使用串行收集器 如果想使用其他收集器需要在启动时加入相应参数 JDK 以后 JVM会根据当前系统配置进行判断         吞吐量优先的并行收集器        如上文所述 并行收集器主要以到达一定的吞吐量为目标 适用于科学技术和后台处理等         典型JVM参数配置         java Xmx m Xms m Xmn g Xss k        XX:+UseParallelGC XX:ParallelGCThreads=         XX:+UseParallelGC:选择垃圾收集器为并行收集器 此配置仅对年轻代有效 即上述配置下 年轻代使用并发收集 而年老代仍旧使用串行收集         XX:ParallelGCThreads= :配置并行收集器的线程数 即 同时多少个线程一起进行垃圾回收 此值最好配置与处理器数目相等         java Xmx m Xms m Xmn g Xss k XX:+UseParallelGC XX:ParallelGCThreads= XX:+UseParallelOldGC        XX:+UseParallelOldGC:配置年老代垃圾收集方式为并行收集 JDK 支持对年老代并行收集         java Xmx m Xms m Xmn g Xss k XX:+UseParallelGC XX:MaxGCPauseMillis=         XX:MaxGCPauseMillis= :设置每次年轻代垃圾回收的最长时间 如果无法满足此时间 JVM会自动调整年轻代大小 以满足此值         java Xmx m Xms m Xmn g Xss k XX:+UseParallelGC XX:MaxGCPauseMillis= XX:+UseAdaptiveSizePolicy        XX:+UseAdaptiveSizePolicy:设置此选项后 并行收集器会自动选择年轻代区大小和相应的Survivor区比例 以达到目标系统规定的最低相应时间或者收集频率等 此值建议使用并行收集器时 一直打开         响应时间优先的并发收集器        如上文所述 并发收集器主要是保证系统的响应时间 减少垃圾收集时的停顿时间 适用于应用服务器 电信领域等         典型JVM参数配置         java Xmx m Xms m Xmn g Xss k        XX:ParallelGCThreads=         XX:+UseConcMarkSweepGC XX:+UseParNewGC        XX:+UseConcMarkSweepGC:设置年老代为并发收集 测试中配置这个以后 XX:NewRatio= 的配置失效了 原因不明 所以 此时年轻代大小最好用 Xmn设置         XX:+UseParNewGC:设置年轻代为并行收集 可与CMS收集同时使用 JDK 以上 JVM会根据系统配置自行设置 所以无需再设置此值         java Xmx m Xms m Xmn g Xss k XX:+UseConcMarkSweepGC XX:CMSFullGCsBeforeCompaction= XX:+UseCMSCompactAtFullCollection        XX:CMSFullGCsBeforeCompaction:由于并发收集器不对内存空间进行压缩 整理 所以运行一段时间以后会产生 碎片 使得运行效率降低 此值设置运行多少次GC以后对内存空间进行压缩 整理         XX:+UseCMSCompactAtFullCollection:打开对年老代的压缩 可能会影响性能 但是可以消除碎片 cha138/Article/program/Java/hx/201311/27039

相关参考

知识大全 JVM优化配置

JVM优化配置  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!   J

知识大全 配置JVM内存分配的妙招

配置JVM内存分配的妙招  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  &n

知识大全 深入apache配置文件httpd.conf的部分参数说明

本篇文章是对apache配置文件的部分参数说明进行了详细的分析介绍需要的朋友参考下   <Directory></Directory>设定指定目录的访问权限<F

知识大全 编译php的配置参数

  php  /configurePRefix=/home/raid/system/phpwithMySQL=/home/raid/system/mysql/withapxs=/home/raid/s

知识大全 Eclipse中进行JVM内存设置

Eclipse中进行JVM内存设置  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &nb

家用太阳能发电系统配置考虑因素是什么?

  二锅头  家用太阳能发电系统配置的设计主要考虑两种因素:  (1)根据负荷需求,环境参数和太阳能光伏电源系统部件的电气参数,选择不同的系统部件。  (2)需要确定的数据主要包括:安装地点的日照辐射

家用太阳能发电系统配置考虑因素是什么?

  二锅头  家用太阳能发电系统配置的设计主要考虑两种因素:  (1)根据负荷需求,环境参数和太阳能光伏电源系统部件的电气参数,选择不同的系统部件。  (2)需要确定的数据主要包括:安装地点的日照辐射

知识大全 mysql的本地备份和双机相互备份脚本

  先修改脚本进行必要的配置然后以root用户执行  第一执行远程备份时先用first参数  本地备份用local参数  远程备份不用参数    注意:需要在另一主机上的Mysql用户用添加用户   

知识大全 配置不算太差!线上等!急!急!急!急!急!急!急! 求高手指导。具体配置↓

玩魔兽世界超卡!配置不算太差!线上等!急!急!急!急!急!急!急!求高手指导。具体配置↓!显示卡配置都没写咋子帮你看咯如果是整合显示卡建议换一个独立的现在一般中低端的比如GT240什么的跑魔兽都是小意

知识大全 oracle网络配置相关概念

  网络配置文件默认的目录在$ORACLE_HOME/neork/admin目录下  sqlnetora  sqlnetora文件决定找数据库服务器别名的方式  参数SQLNETAUTHENTICAT