zoukankan      html  css  js  c++  java
  • JVM 相关参数

    参数名参数说明                                                    
    -server 启用能够执行优化的编译器, 显著提高服务器的性能,但使用能够执行
    优化的编译器时,服务器的预备时间将会较长。生产环境的服务器强烈推荐设置
    此参数。
    -Xss 单个线程堆栈大小值;JDK5.0 以后每个线程堆栈大小为1M,以前每个线程
    堆栈大小为256K。在相同物理内存下,减小这个值能生成更多的线程。但是操
    作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在
    3000~5000 左右。
    -XX:+UseParNewGC 可用来设置年轻代为并发收集【多CPU】,如果你的服务器
    有多个CPU,你可以开启此参数;开启此参数,多个CPU 可并发进行垃圾回收,
    可提高垃圾回收的速度。此参数和+UseParallelGC,-XX:ParallelGCThreads 搭
    配使用。
    +UseParallelGC 选择垃圾收集器为并行收集器。此配置仅对年轻代有效。即上
    述配置下,年轻代使用并发收集,而年老代仍旧使用串行收集。可提高系统的
    吞吐量。
    -XX:ParallelGCThreads 年轻代并行垃圾收集的前提下(对并发也有效果)的线
    程数,增加并行度,即:同时多少个线程一起进行垃圾回收。此值最好配置与处
    理器数目相等。
    永久存储区相关参数:
    参数名参数说明
    -Xnoclassgc 每次永久存储区满了后一般GC 算法在做扩展分配内存前都会触发
    一次FULL GC,除非设置了-Xnoclassgc.
    -XX:PermSize 应用服务器启动时,永久存储区的初始内存大
    -XX:MaxPermSize 应用运行中,永久存储区的极限值。为了不消耗扩大JVM 永久
    存储区分配的开销,将此参数和-XX:PermSize 这个两个值设为相等。
    堆空间相关参数
    参数名参数说明
    -Xms 启动应用时,JVM 堆空间的初始大小值。
    -Xmx 应用运行中,JVM 堆空间的极限值。为了不消耗扩大JVM 堆控件分配的开
    销,将此参数和-Xms 这个两个值设为相等,考虑到需要开线程,讲此值设置为
    总内存的80%.
    -Xmn 此参数硬性规定堆空间的新生代空间大小,推荐设为堆空间大小的1/4。
    上面所列的JVM 参数关系到系统的性能,而其中-XX:PermSize,
    -XX:MaxPermSize,-Xms,-Xmx 和-Xmn 这5 个参数更是直接关系到系统的性能,
    系统是否会出现内存溢出。
    始大小和极限大小;在生成环境中强烈推荐将这个两个值设置为相同的值,以避
    免分配永久存储区的开销,具体的值可取系统“疲劳测试”获取到的永久存储区
    的极限值;如果不进行设置-XX:MaxPermSize 默认值为64M,一般来说系统的类定
    义文件大小都会超过这个默认值。
    -Xms 和-Xmx 分别是服务器启动时,堆空间的初始大小和极限值。-Xms 的默认值
    是物理内存的1/64 但小于1G,-Xmx 的默认值是物理内存的1/4 但小于1G.在生
    产环境中这些默认值是肯定不能满足我们的需要的。也就是你的服务器有8g 的
    内存,不对JVM 参数进行设置优化,应用服务器启动时还是按默认值来分配和约
    束JVM 对内存资源的使用,不会充分的利用所有的内存资源。
    到此我们就不难理解上文提到的“我的服务器有8g 内存,系统也就100M 左右,
    居然出现内存溢出”这个“怪现象”了。在上文我曾提到“永久存储区溢出
    (java.lang.OutOfMemoryError: Java Permanent Space)”和“JVM 堆空间溢
    出(java.lang.OutOfMemoryError: Java heap space)”这两种溢出错误。现
    在大家都知道答案了:“永久存储区溢出(java.lang.OutOfMemoryError: Java
    Permanent Space)”乃是永久存储区设置太小,不能满足系统需要的大小,此
    时只需要调整-XX:PermSize 和-XX:MaxPermSize 这两个参数即可。“JVM 堆空间
    溢出(java.lang.OutOfMemoryError: Java heap space)”错误是JVM 堆空间
    不足,此时只需要调整-Xms 和-Xmx 这两个参数即可。

  • 相关阅读:
    在Ubuntu中通过update-alternatives切换软件版本
    SCons: 替代 make 和 makefile 及 javac 的极好用的c、c++、java 构建工具
    mongodb 的使用
    利用grub从ubuntu找回windows启动项
    How to Repair GRUB2 When Ubuntu Won’t Boot
    Redis vs Mongo vs mysql
    java script 的工具
    python 的弹框
    how to use greendao in android studio
    python yield的终极解释
  • 原文地址:https://www.cnblogs.com/shengzi/p/10974576.html
Copyright © 2011-2022 走看看