常见性能瓶颈调优总结之JVM1小时1次CMS FGC调优

在过去做性能测试过程中经常看到1小时1次FGC问题,该问题在高并发情况下对性能产生很大的波动不可小看,也许一个小小的调优可以给性能带来很大的改善。
  应用出现1小时1次FGC,所引发的原因是由于使用了RMI,会自动1小时调用1次system.gc()。
  大多数的应用虽然配置了CMS gc方式,但是如果没有使用-XX:+ExplicitGCInvokesConcurrent,则会出现显示调用system.gc(),且不会进行 CMS的FGC,带来的影响是造成tps的波动(fgc停机时间越长,则波动会越大)。
  收集各方的意见后,总结针对此类问题的解决方法如下:
  1、增加参数 -XX:+DisableExplicitGC
  该方法System.gc()的调用就会变成一个空调用。但是该方法不适用在大量使用NIO的direct memory,经常、反复的申请DirectByteBuffer的应用中使用,会造成“java.lang.OutOfMemoryError: Direct buffer memory ”。该方法需根据应用具体情况而定。
  2、增加参数 -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
  其中3600000即为定时触发的时间间隔设置,单位是毫秒,可适当延长触发FGC的定时时间间隔。
  -Dsun.rmi.dgc.client.gcInterval=Long.MAX_VALUE -Dsun.rmi.dgc.server.gcInterval=Long.MAX_VALUE 则将fc时间间隔设为long型的最大值
  3、增加参数 -XX:+ExplicitGCInvokesConcurrent 或者-XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses
  该方法可以指定System.gc()采用 CMS 算法,FGC时停机时间会变短,但是CMS GC次数不会变,仍然是1小时1次。
版权声明:本文出自 希君 的51Testing软件测试博客:http://www.51testing.com/?367410
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。
最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-07-29 03:03:40

常见性能瓶颈调优总结之JVM1小时1次CMS FGC调优的相关文章

海尔优知妈咪汇是海尔集团重磅打造的优知妈咪的科学育儿互动平台

每个宝宝的萌牙时间不同,多数宝宝六七个月开始萌牙,有些可能更早,这些都无关牙齿好坏.无论爸爸出牙早晚,只要妈妈精心照顾,注意口腔卫生,制作辅食补充适当营养,宝宝的牙齿一样健康.巧制辅食,助宝宝长牙宝宝萌牙的迹象有牙床有些红肿.流口水.爱啃东西等等.细心的妈妈观察到这些特点后,就要为开始辅助宝宝结束"无齿"的生活了.固齿的营养素都集中虾.虾皮.骨头.紫菜.鱼肉松.蛋黄粉.牛奶.蔬菜等食品里,可以做成蔬菜泥或榨出蔬菜汁.虾泥.虾末等等宝宝能接受的并能消化的状态.在海尔优知妈咪汇母婴社区中,

优酷升级了其基于iPhone、andriod操作系统的优酷拍客客户端

优酷升级了其基于iPhone.andriod操作系统的优酷拍客客户端至V1.1版本.V1.0版以视频拍摄.上传和基础分享的功能为主:V1.1升级版,与站外微博.SNS平台的账号互通联动升级,新增腾讯账号登录许可,优酷.新浪.腾讯用户均可通过优酷拍客方便地进行视频拍摄和分享.优酷站内用户关系也得到更多体现,@某人.转发信息以及好友查找等互动功能已支持. 同时,支持720p高清视频的拍摄上传,新增通知功能也是本次升级的亮点.升级至V1.1版本,优酷拍客已全面支持720p高清视频的拍摄上传,满足高清手

土豆优酷合并致股价暴涨:土豆涨156%创新高 优酷涨27%

北京时间3月13日消息,受希腊私债重组取得进展.投资者关注美联储议息会议等影响,周一美股收盘三大股指涨跌互现. 截至美东时间3月12日16:00(http://www.aliyun.com/zixun/aggregation/17197.html">北京时间3月13日05:00),,道琼斯工业平均指数上涨37.69点,收于12959.71点,涨幅为0.29%:纳斯达克综合指数下跌4.68点,收于2983.66点,跌幅为0.16%:标准普尔500指数上涨0.22点,收于1371.09点,涨幅

优酷高原高级财务副总裁徐舸接任优酷CFO兼高级副总裁

7月2日晚间消息,优酷今日宣布,公司原CFO兼高级副总裁刘德乐晋升为总裁,原高级财务副总裁徐舸接任优酷CFO兼高级副总裁,该任命于2012年7月2日生效. 资料显示,刘德乐2006年加入优酷网,任CFO兼高级副总裁.他毕业于上海海事大学,获经济学士学位,后于哈佛商学院进修.曾任风险投资公司富国集团投资经理.鲍尔太平有限公司副总裁,主要从事资本市场业务. 徐舸于2011年9月加入优酷,担任高级财务副总裁,有财务管理.企业并购和内控方面从业经验,曾先后任职于普华永道.思科.联想集团(微博).阿里巴巴

优酷CTO姚键:希望酷6使用优酷版权合作管理系统

针对酷6表示向优酷发起 版权维权,优酷CTO姚键对媒体表示,酷6对于优酷的诉讼行为纯属恶意炒作,优酷欢迎酷6使用优酷的版权合作管理系统,与正在使用该系统的版权合作方一道体验技术的便捷和高效解决版权问题的手段,也希望能与酷6的技术团队交流合作,让这套系统广为视频行业的版权平台管理服务,促进行业自律,全面贯穿内容-平台-营销的产业链条. 此前,优酷正式推出视频版权合作管理系统,以大规模的购买与合作为基础,加以严密的技术监管体系,促进视频版权治理.优酷CTO姚键还一再强调,版权合作系统目前使用良好,欧

优使性设计养成专栏—从需求层级来看优使性

原文为繁体,转载时翻译为简体,传送门:原文 关于优使性,我们最常听到的解释可能是』好用』.』易用』(ease-of-use).』可用』,然而,以〝好用〞来定义优使性似乎有些不足(用』可用』作为解释就更奇怪了,因为感觉好像与』堪用』很类似),因为好用只能说是构成优使性的原素之一,如果以各种不同的需求层次来分析,也许能够更清楚的了解优使性的定位. 美国人本主义心理学家亚伯拉罕·马斯洛(Abraham Maslow)在1954年时提出著名的需求层次理论(Need-hierarchy theory),这

《大规模Java平台虚拟化与调优》——1.3 大规模Java平台的技术因素

1.3 大规模Java平台的技术因素 当设计大规模Java平台时,需要考虑很多的技术因素.例如,对于构建良好的大规模Java平台来说,需要很好地理解Java垃圾回收(garbage collection,GC)以及JVM架构.硬件和hypervisor架构.本节中,概要讨论了GC.非一致内存架构(Non-Uniform Memory Architecture,NUMA),以及在理论和实际操作中的内存限制.稍后的章节会给出更为详细的描述,但首先在整体上理解围绕大规模Java平台设计有哪些问题是非常

ANDROID性能调优

http://www.trinea.cn/android/android-performance-demo/#comment-115 本文主要分享自己在appstore项目中的性能调优点,包括同步改异步.缓存.Layout优化.数据库优化.算法优化.延迟执行等.   性能优化专题已完成五部分: 性能优化总纲--性能问题及性能调优方式性能优化第三篇--Java(Android)代码优化性能优化第二篇--布局优化性能优化第一篇--数据库性能优化 性能优化实例    一.性能瓶颈点 整个页面主要由6个

优酷土豆资深工程师:GC 调优实战

前情概要 对于线上高并发.高吞吐的Java web服务来说,长时间的GC暂停(也叫 stop- the-world)会严重影响系统吞吐.稳定性和用户体验.下文是我们的一个真实线上web系统针对GC调优过程的一个总结.这个系统在调优前,经常会反映有超秒的GC暂停问题,这种GC问题可能会导致调用方(可能是上层服务调用方.负载均衡层或客户端)阻塞.超时.甚至雪崩的情况.我们在系统资源不变的情况下,经过多轮调优,大幅降低了GC的频率和暂停时间. 前期准备 1.统计应用数据(峰值TPS.平均TPS,每秒平