zoukankan      html  css  js  c++  java
  • JVM内存分配与垃圾回收机制管理

    项目上线,性能优化有个重要组成就是jvm内存分配和垃圾回收机制的管理配置。

    网上随便能搜到相关的具体步骤,以及内存中各种参数对应的意义,不再赘述。

    干货就是直接抛出遇到的问题,以及如何解决的,再说说待探索的地方:

    Linux【我用的centos6.7】设置很顺利,直接通过vi修改服务器tomcat的bin/catalina.sh文件,在文件注释结束的第一行增加如下设置:
    JAVA_OPTS=’-Xmx4000M
    -Xms4000M
    -Xmn600M
    -XX:PermSize=500M
    -XX:MaxPermSize=500M
    -Xss256K
    -XX:+DisableExplicitGC
    -XX:SurvivorRatio=1
    -XX:+UseConcMarkSweepGC
    -XX:+UseParNewGC
    -XX:+CMSParallelRemarkEnabled
    -XX:+UseCMSCompactAtFullCollection
    -XX:CMSFullGCsBeforeCompaction=0
    -XX:+CMSClassUnloadingEnabled
    -XX:LargePageSizeInBytes=128M
    -XX:+UseFastAccessorMethods
    -XX:+UseCMSInitiatingOccupancyOnly’

    重启tomcat服务即可生效,具体可在监控页面查看。

    Windows环境中出现了问题,根据很多分享的文章,修改“%TOMCAT_HOME%incatalina.bat”文件,有的说是在文件开头增加如下设置:
    set JAVA_OPTS=-Xms256m -Xmx512m
    有的说是在echo Using CATALINA_HOME:   "%CATALINA_HOME%"的下一行或下一行,有的说是echo Using CATALINA_BASE:   "%CATALINA_BASE%"的下一行或上一行,但真的配置后重启,要么是启动闪退,要么是启动后的参数没有生效。

    解决:

    “%TOMCAT_HOME%incatalina.bat”文件文件中的“rem Guess CATALINA_HOME if not defined”注释行下面,直接添加set JAVA_OPTS=-Xms256m -Xmx512m······之类参数。

    重启tomcat,通过监控页面查看,生效!

    待解决的问题:添加-Xmn2048m参数,会导致启动闪退,去掉后可以成功,至今还没找到原因,可能跟Windows中其他设置冲突,所以我们当前的生产环境全部为centos。

    如果有朋友知道如何解决,希望能留言告知一下。也希望总结的这个问题能帮助到一些朋友。

  • 相关阅读:
    JMeter:全面的乱码解决方案
    代码静态扫描工具sonar
    jmeter接口测试
    MVC模式
    Android--HttpClient
    android SQLite使用SQLiteOpenHelper类对数据库进行操作
    反射
    列约束
    MVC的处理过程
    android项目中values中几个文件的作用
  • 原文地址:https://www.cnblogs.com/wujh88/p/7284533.html
Copyright © 2011-2022 走看看