今天在做一个接口的性能测试的时候发现以下情况:
查看visualVM的图形如下所示:
Full GC非常平凡,Minor GC次数比较少。立马查看JVM配置如下:
从配置中可以看出Youngh 区分配空间太大,导致old去内存溢出。修改JVM参数如下所示:
JAVA_OPTS="$JAVA_OPTS -Xms1024m -Xmx1024m -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=128m -XX:SurvivorRatio=22 -XX:MaxTenuringThreshold=6 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/home/member/ma-online/logs/gc.log"
减少Youngh区内存大小为256,增加两个survivor区,并且增加垃圾最大年龄, Youngh区进行ParNewGC策略,old区进行cms策略。配置完成后进行压力测试如下所示:
明显FGC的次数降低。
VisualVM的图形如下所示:
效率大增。
JVM参数配置可以参考blog:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
分类:
PerformanceTest
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· Blazor Hybrid适配到HarmonyOS系统
· 万字调研——AI生成内容检测
· 解决跨域问题的这6种方案,真香!
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库