关于jvm调优求大神指导

程序员劝退师·咩 2020-07-27 10:12:21
linux服务器内存64g的,线上项目偶尔会内存飙满到80%,项目然后就处于假死状态,页面请求基本都挂起了。但是tomcat进程还是在的。通过shutdown.sh关闭tomcat因为申请不到足够内存会报内存溢出错误,想让大家看一下tomcat的参数,有什么不合理的地方。请教大神指导。
...全文
3911 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 6 楼 小宇 的回复:
引用 5 楼 程序员劝退师·咩 的回复:
引用 4 楼 小宇 的回复:
你这么大内存的机器,应该使用G1垃圾回收器,如果你使用cms回收器,你想想,你年轻代22g,如果要做一次YongGc得多长时间才能回收完,你老年代将近40个G,做一次FullGC又得多久,估计你的机器一做gc,stop the word ,服务就会假死,建议你打印一下GC日志,可以看一下每次GC占用多长时间,启动的时候可以加上这个打印GC,‐XX:+PrintGCDetails ‐XX:+PrintGCTimeStamps ‐XX:+PrintGCDateStamps ‐Xloggc:./gc.log
感谢大佬,之前因为程序问题有内存泄漏,最后修复后再没有出问题。感谢您的指导
好的,哈哈,客气,大内存机器,你可以了解了解G1回收器
好的好的,该补补功课了。感谢!
小宇 2020-10-12
  • 打赏
  • 举报
回复
引用 5 楼 程序员劝退师·咩 的回复:
引用 4 楼 小宇 的回复:
你这么大内存的机器,应该使用G1垃圾回收器,如果你使用cms回收器,你想想,你年轻代22g,如果要做一次YongGc得多长时间才能回收完,你老年代将近40个G,做一次FullGC又得多久,估计你的机器一做gc,stop the word ,服务就会假死,建议你打印一下GC日志,可以看一下每次GC占用多长时间,启动的时候可以加上这个打印GC,‐XX:+PrintGCDetails ‐XX:+PrintGCTimeStamps ‐XX:+PrintGCDateStamps ‐Xloggc:./gc.log
感谢大佬,之前因为程序问题有内存泄漏,最后修复后再没有出问题。感谢您的指导
好的,哈哈,客气,大内存机器,你可以了解了解G1回收器
  • 打赏
  • 举报
回复
引用 4 楼 小宇 的回复:
你这么大内存的机器,应该使用G1垃圾回收器,如果你使用cms回收器,你想想,你年轻代22g,如果要做一次YongGc得多长时间才能回收完,你老年代将近40个G,做一次FullGC又得多久,估计你的机器一做gc,stop the word ,服务就会假死,建议你打印一下GC日志,可以看一下每次GC占用多长时间,启动的时候可以加上这个打印GC,‐XX:+PrintGCDetails ‐XX:+PrintGCTimeStamps ‐XX:+PrintGCDateStamps ‐Xloggc:./gc.log
感谢大佬,之前因为程序问题有内存泄漏,最后修复后再没有出问题。感谢您的指导
小宇 2020-10-12
  • 打赏
  • 举报
回复
你这么大内存的机器,应该使用G1垃圾回收器,如果你使用cms回收器,你想想,你年轻代22g,如果要做一次YongGc得多长时间才能回收完,你老年代将近40个G,做一次FullGC又得多久,估计你的机器一做gc,stop the word ,服务就会假死,建议你打印一下GC日志,可以看一下每次GC占用多长时间,启动的时候可以加上这个打印GC,‐XX:+PrintGCDetails ‐XX:+PrintGCTimeStamps ‐XX:+PrintGCDateStamps ‐Xloggc:./gc.log
街头小贩 2020-07-27
  • 打赏
  • 举报
回复
是否有其它进程占用资源过高,导致系统资源不足
一个帅逼 2020-07-27
  • 打赏
  • 举报
回复
你有看过gc日志吗,minor gc 和full gc多久一次,有可能是full gc stw太久导致假死
无名一小卒 2020-07-27
  • 打赏
  • 举报
回复
我之前遇到过一次,是多线程线程执行没有处理对导致的

50,543

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧