`
wh0426
  • 浏览: 55104 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
Group-logo
架构师的知识与实践
浏览量:55102
社区版块
存档分类
最新评论

linux环境mule JVM短生命周期对象性能调整

    博客分类:
  • JVM
阅读更多

最近,在一项目上,发现后端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 IDE (mule ESB)

    Mule ESB 是一个轻量级的基于java的企业服务总线和集成平台, 使得开发人员可以快速,简单的连接多个应用, 使得它们可以交换数据。 Mule ESB 容易集成现有异构系统,包括:JMS, Web Services, JDBC, HTTP, 等. ESB...

    mule开发环境搭建和部署

    教你如何部署和搭建mule 开发环境 非常详细的文档介绍

    MULE ESB-4.1企业版运行环境

    MULE ESB-4.1企业版运行环境,将AnyPoint Studio开发的项目方到apps目录下即可,注意项目的运行环境需与该环境一致

    Mule ESB应用部署

    Mule ESB应用部署 Mule ESB应用的目录结构,配置文件说明

    MULE ESB案例

    Mule ESB 项目在Linux中的部署与开发与应用案例

    mule文档详解 mule

    Mule是一个企业服务总线(ESB)消息框架,而且Mule是一个轻量级且高度可扩展的ESB。

    mule performance metrics

    mule performance metrics, 相关性能的一些指标,具有一定的参考价值

    mule-standalone-3.6.0.zip

    mule-standalone-3.6.0 ESB数据总线的开源版部署环境 mule社区版部署环境

    MULE ESB-4.1社区办运行环境

    MULE ESB-4.1社区办运行环境,将AnyPoint Studio开发的项目方到APPS目录下即可

    mule -esb 源码

    mule -esb 源码

    mule 详细资料

    mule 详细资料,包含基础配置参数说明,及实例分解说明,图文并茂

    应用集成开源框架MULE的源代码

    Mule 的核心是一个基于SEDA的服务容器,该容器管理被称为通用消息对象(Universal Message Objects /UMO)的服务对象,而这些对象都是POJO。所有UMO和其他应用之间的通信都是通过消息端点(message endpoint)来进行...

    mule入门文档

    mule入门文档 mule入门文档 mule入门文档mule入门文档

    Mule ESB开发一个小例子

    mule,mule esb,Mule,ESB

    mule in action 说明+文档介绍

    mule in action 和doc文档详细介绍 Mule的核心组件是UMO(Universal Message Objects,从Mule2.0开始UMO这一概念已经被组件Componse所代替),UMO实现整合逻辑。UMO可以是POJO,JavaBean等等。它支持30多种传输协议...

    Mule in Action, 2nd Edition

    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 in Action

    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 ...

Global site tag (gtag.js) - Google Analytics