为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > JBOSS内存优化的方法具体可以参见不同内存下的配置

JBOSS内存优化的方法具体可以参见不同内存下的配置

2018-03-26 5页 doc 17KB 16阅读

用户头像

is_005190

暂无简介

举报
JBOSS内存优化的方法具体可以参见不同内存下的配置JBOSS内存优化的方法具体可以参见不同内存下的配置 JBOSS内存优化的方法, 具体可以参见不同内存下的配置 jboss优化 JVM的优化 Jvm分为主要为两大块 ,一个是heap和 nheap Heap包括三个区域. Eden space ,survivor space ,tenured space. 其中surivor space包括两个区,一个是from,一个是to区 Eden是负责新对象的创建区域。当新对象无法在eden区创建的时候,eden区会进行minor gc,会将一些失效的对象清除。会将清除下来...
JBOSS内存优化的方法具体可以参见不同内存下的配置
JBOSS内存优化的方法具体可以参见不同内存下的配置 JBOSS内存优化的方法, 具体可以参见不同内存下的配置 jboss优化 JVM的优化 Jvm分为主要为两大块 ,一个是heap和 nheap Heap包括三个区域. Eden space ,survivor space ,tenured space. 其中surivor space包括两个区,一个是from,一个是to区 Eden是负责新对象的创建区域。当新对象无法在eden区创建的时候,eden区会进行minor gc,会将一些失效的对象清除。会将清除下来的部分对象放到survivor space区域或者tenured space区域。当tenured space的对象越来越多的时候,达到jvm内存不足10%的时候,会进行一次full gc来释放对象。项目要尽可能少的full gc ,应为full gc比较占用内存,一般要求吞吐量比较大的时候,尽量的将new区域设置的比较大一点。也就是eden和survivor这个区域。 下面简要的说一下配置参数 set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m -XX:MaxPermSize=256m 存,32bit操作系统最大在1.5g-2g之间。64位-Xms512m 代表jvm最少用 512m内 的无限制 -Xmx1024m 代表jvm最多使用 1024m内存,尽量的将-Xms和-Xmx大小设置相同,这样避免内存重新分配影响性能 -Xss=128k 线程初始化大小,5.0之前默认是128k,之后为1m,线程机器最大为3000-5000 -XX:MaxPermSize=256m.这是表明持久类,也就是noheap区域的最大为256 -XX:PermSize=256m这个持久区域初始化为256m,一般持久类的大小是64m 这个配置是最常用的配置。如果需要考虑到吞吐量,那么new space和old space你就得重新分配一下 Jvm垃圾收集器包括三种:串行,并行,并发 串行:处理小型数据,jdk1.4之前默认使用 并行:1.5和1.5之后使用,处理 典型服务器配置有以下几种: -Xmx3800m -Xms3800m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseParallelGC:选择垃圾收集器为并行收集器。此配置仅对年轻代有效。即上述配置下,年轻代使用并发收集,而年老代仍旧使用串行收集。 -XX:ParallelGCThreads=20:配置并行收集器的线程数,即:同时多少个线程一起进行垃圾回收。此值最好配置与处理器数目相同 -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseParallelOldGC -XX:+UseParallelOldGC:配置年老代垃圾收集方式为并行收集。JDK6.0支持对年老代并行收集。 -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=5 -XX:+UseCMSCompactAtFullCollection 由于并发收集器不对内存空间进行压缩、XX:CMSFullGCsBeforeCompaction: 整理,所以运行一段时间以后会产生“碎片”,使得运行效率降低。此值设置运行多少次GC以后对内存空间进行压缩、整理。 -XX:+UseCMSCompactAtFullCollection:打开对年老代的压缩。可能会影响性能,但是可以消除碎片 常见配置汇总 1. 堆设置 -Xss128k:JBoss每增加一个线程(thread)就会立即消耗128K,默认值好像是512k. -Xms512m:初始堆大小,代表jvm最少用 512m内存 -Xmx:最大堆大小 一般为服务器的3/4内存量,推荐至少使用4G内存,不应该超过物理内存的90,。 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5 -XX:MaxPermSize=n:设置持久代大小 2. 收集器设置 -XX:+UseSerialGC:设置串行收集器 -XX:+UseParallelGC:设置并行收集器 -XX:+UseParalledlOldGC:设置并行年老代收集器 -XX:+UseConcMarkSweepGC:设置并发收集器 3. 垃圾回收统计信息 -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:filename 4. 并行收集器设置 -XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数。并行收集线程数。 -XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间 -XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n) 5. 并发收集器设置 -XX:+CMSIncrementalMode:设置为增量模式。适用于单CPU情况。 -XX:ParallelGCThreads=n:设置并发收集器年轻代收集方式为并行收集时,使用的CPU数。并行收集线程数。 查看CPU数 cat /proc/cpuinfo | grep "processor" | wc -l 生产环境8G内存jboss配置如下 if [ "x$JAVA_OPTS" = "x" ]; then JAVA_OPTS="-Xss128k -Xms6000m -Xmx6000m -XX:MaxNewSize=512m -XX:MaxPermSize=512M -XX:+UseParallelGC -XX:ParallelGCThreads=16 -XX:+UseParallelOldGC -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000" fi 生产环境4G内存jboss配置如下 if [ "x$JAVA_OPTS" = "x" ]; then JAVA_OPTS="-Xss128k -Xms3000m -Xmx3000m -XX:MaxNewSize=256m -XX:MaxPermSize=256m -XX:+UseParallelGC -XX:ParallelGCThreads=16 -XX:+UseParallelOldGC -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000" fi
/
本文档为【JBOSS内存优化的方法具体可以参见不同内存下的配置】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索