• JBoss 性能优化(解决Jboss内存紧张的问题)


    修改$JBOSS_HOME/bin/run.conf文件

     
    JAVA_OPTS="-Xms 520m -Xmx 1220m -Xss 15120k +XX:AggressiveHeap"
    1. +XX:AggressiveHeap
    这使得 Xms 1220m没有意义。这个参数让jvm忽略Xmx参数,疯狂地吃完一个G物理内存,再吃尽一个G的swap。
    另外Xmx作为允许jvm使用的最大内存数量,不应该超过物理内存的90%。
    而之所以使用了这个参数,是因为不加的话,JBoss会在运行一天左右的时间后迅速崩溃,甚至半个小时就崩溃。
    2. -Xss 15120k
    这使得JBoss每增加一个线程(thread)就会立即消耗15M内存,而最佳值应该是128K,默认值好像是512k.
    这就是JBoss刚启动时,还有200Mb内存富余,但会在一个小时内迅速用完,因为服务器的threads在迅速增加。前3天,每天都多吃80Mb左右的swap.在第四天开始稳定下来。原因是:服务器在线程到达100之后,一般不再增加新的线程,新增加的在用完之后,会被迅速destroy,1.25-2.10所使用的线程基本是1.21- 1.23创建的,因此没有再消耗新的内存。服务器持续运行时间达到20天。
    3. -Xms
    指定初始化内存大小
    作如下修改:
    1.修改JAVA_OPTS,去掉+XX:AggressiveHeap,修改Xss。现在的JAVA_OPTS为:
    -Xms 520m -Xmx 900m -Xss 128k
    2.修改deploy/jbossweb-tomcat55.sar/service.xml
    将maxThreads根据目前的访问量由默认的250降为75,并加入2个参数: maxSparseThreads="55",minSparseThreads="25"
    3.去掉了一些不用的服务。
     
     
  • 相关阅读:
    ycsb
    Tikv docker-compose go client
    Raft 协议
    kubectl 命令
    JAVA判断是否是微信内置浏览器,是否是在微信内打开
    IDEA设置默认maven配置
    JAVA中JDK1.8的LocalDateTime日期类的操作方法
    JAVA在JDK1.8中Stream流的使用
    Linux(Centos)部署Jenkins
    Linux(Centos)安装maven
  • 原文地址:https://www.cnblogs.com/firstdream/p/5519916.html
Copyright © 2020-2023  润新知