最近,在一项目上,发现后端mule es cpu耗用高。经过jstat -gcutil jvm进程号 1000 10分析,发现FGC次数,较多。
根据gc观察,O老生代,经过达到80% 以上。而新生代survior s1,s2内存空间比较小。判断有新生代对象没经过几次gc,就进入了老生代。
修改mule/conf/wrapper.conf .增加如下选择。
wrapper.java.additional.5=-XX:+PrintGCDetails
wrapper.java.additional.6=-XX:+PrintGCDateStamps
wrapper.java.additional.7=-verbose:gc
wrapper.java.additional.8=-Xloggc:gc.log
wrapper.java.additional.9=-XX:ParallelGCThreads=10
wrapper.java.additional.10=-XX:+UseConcMarkSweepGC
wrapper.java.additional.11=-XX:+UseParNewGC
wrapper.java.additional.12=-XX:NewRatio=3
wrapper.java.additional.13=-Xss256K
wrapper.java.additional.14=-XX:SurvivorRation=2
wrapper.java.additional.15=-XX:TargetSurvivorRatio=8
NewRatio=3属性增加新生代大小。年轻代(Eden和两个Survivor与年老代的比值),年轻代为堆的1/4大小。
-XX:SurvivorRatio=2 Eden区与Survivor区的大小比值。代表Eden区为2/10,survivor是8/10.survivor存储Eden快速回收后的数据,survivor适当调高有利于缓解经几次fast gc后,才会回收的对象,这些对象经过几次gc,是可以回收掉的。如果survior太小,则经过一两次回收,由于survivor空间过小,则会直接进入Old代。如果适中,在经过几次gc后,回收掉。不用在放入old代。经几次回收才能释放的对象,可以理解为中短期生命周期对象,它是有机会回收,但需要其它依赖释放引用。
参考文献:
JVM实用参数(五)新生代垃圾回收
http://ifeve.com/useful-jvm-flags-part-5-young-generation-garbage-collection
相关推荐
Mule ESB 是一个轻量级的基于java的企业服务总线和集成平台, 使得开发人员可以快速,简单的连接多个应用, 使得它们可以交换数据。 Mule ESB 容易集成现有异构系统,包括:JMS, Web Services, JDBC, HTTP, 等. ESB...
教你如何部署和搭建mule 开发环境 非常详细的文档介绍
MULE ESB-4.1企业版运行环境,将AnyPoint Studio开发的项目方到apps目录下即可,注意项目的运行环境需与该环境一致
Mule ESB应用部署 Mule ESB应用的目录结构,配置文件说明
Mule ESB 项目在Linux中的部署与开发与应用案例
Mule是一个企业服务总线(ESB)消息框架,而且Mule是一个轻量级且高度可扩展的ESB。
mule performance metrics, 相关性能的一些指标,具有一定的参考价值
mule-standalone-3.6.0 ESB数据总线的开源版部署环境 mule社区版部署环境
MULE ESB-4.1社区办运行环境,将AnyPoint Studio开发的项目方到APPS目录下即可
mule -esb 源码
mule 详细资料,包含基础配置参数说明,及实例分解说明,图文并茂
Mule 的核心是一个基于SEDA的服务容器,该容器管理被称为通用消息对象(Universal Message Objects /UMO)的服务对象,而这些对象都是POJO。所有UMO和其他应用之间的通信都是通过消息端点(message endpoint)来进行...
mule入门文档 mule入门文档 mule入门文档mule入门文档
mule,mule esb,Mule,ESB
mule in action 和doc文档详细介绍 Mule的核心组件是UMO(Universal Message Objects,从Mule2.0开始UMO这一概念已经被组件Componse所代替),UMO实现整合逻辑。UMO可以是POJO,JavaBean等等。它支持30多种传输协议...
Mule in Action, Second Edition is a totally-revised guide covering Mule 3 fundamentals and best practices. It starts with a quick ESB overview and then dives into rich examples covering core concepts ...
Mule is the most widely used open source ESB-with millions of downloads-providing an alternative to expensive commercial options. Mule in Action is acomprehensive tutorial designed for working Java ...