Loading

随笔分类 -  Jvm

摘要:一次Java内存占用高的排查案例,解释了我对内存问题的所有疑问> 原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 ### 问题现象 7月25号,我们一服务的内存占用较高,约13G,容器总内存16G,占用约85%,触发了内存报警(阈值85%),而我们是按容器内存60%(9.6G)的比例配置的JVM堆内存。看了下其它服务,同 阅读全文
posted @ 2023-08-26 19:46 扣钉日记 阅读(7473) 评论(7) 推荐(28) 编辑
摘要:java获取到heapdump文件后,如何快速分析?原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 简介 在之前的OOM问题复盘之后,本周,又一Java服务出现了内存问题,这次问题不严重,只会触发堆内存占用高报警,没有触发OOM,但好在之前的复盘中总结了dump脚本,会在堆占用高时自动执行jstack与jmap 阅读全文
posted @ 2023-04-21 22:10 扣钉日记 阅读(709) 评论(0) 推荐(3) 编辑
摘要:jmap执行失败了,怎么获取heapdump?原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 在之前的OOM问题复盘中,我们添加了jmap脚本来自动dump内存现场,方便排查OOM问题。 但当我反复模拟OOM场景测试时,发现jmap有时可以dump成功,有时会报错,如下: 经过网上一顿搜索,发现两种原因可 阅读全文
posted @ 2023-04-16 13:56 扣钉日记 阅读(503) 评论(0) 推荐(0) 编辑
摘要:一次线上OOM问题的个人复盘原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,非公众号转载保留此声明。 上个月,我们一个java服务上线后,偶尔会发生内存OOM(Out Of Memory)问题,但由于OOM导致服务不响应请求,健康检查多次不通过,最后部署平台kill了java进程,这导致定位这次OOM问题也变得困 阅读全文
posted @ 2023-04-01 16:19 扣钉日记 阅读(1901) 评论(2) 推荐(3) 编辑
摘要:记一次使用gdb诊断gc问题全过程原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 上次解决了GC长耗时问题后,系统果然平稳了许多,这是之前的文章《GC耗时高,原因竟是服务流量小?》 然而,过了一段时间,我检查GC日志时,又发现了一个GC问题,如下: 从这个图中可以发现,我们GC有一些尖峰,有时会 阅读全文
posted @ 2023-02-04 18:47 扣钉日记 阅读(2272) 评论(6) 推荐(12) 编辑
摘要:GC耗时高,原因竟是服务流量小?原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 最近,我们系统配置了GC耗时的监控,但配置上之后,系统会偶尔出现GC耗时大于1s的报警,排查花了一些力气,故在这里分享下。 发现问题 我们系统分多个环境部署,出现GC长耗时的是俄罗斯环境,其它环境没有这个问题,这里 阅读全文
posted @ 2023-01-07 22:02 扣钉日记 阅读(810) 评论(3) 推荐(3) 编辑
摘要:一次SSL握手异常,我发现JDK还有发行版区别原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 最近,我们一个多机房部署的服务,调用方反馈有问题,在调用新加坡机房时正常,而调用印度机房则报SSL握手异常。 排查花了一些时间,同时也积累了一些经验,故记录一下,读完本文,你将了解到如下内容: SSL握手过程 SS 阅读全文
posted @ 2022-08-28 21:16 扣钉日记 阅读(495) 评论(0) 推荐(1) 编辑
摘要:JVM诊断命令jcmd介绍原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 从JDK7开始,jdk提供了一个方便扩展的诊断命令jcmd,用来取代之前比较分散的jdk基础命令,如jps、jstack、jmap、jinfo等,并且jdk添加新的诊断功能,也会通过jcmd提供,所以还是有必要将这 阅读全文
posted @ 2022-07-30 17:32 扣钉日记 阅读(1020) 评论(0) 推荐(0) 编辑
摘要:接口偶尔超时,竟又是JVM停顿的锅!原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 继上次我们JVM停顿十几秒的问题解决后,我们系统终于稳定了,再也不会无故重启了! 这是之前的文章:耗时几个月,终于找到了JVM停顿十几秒的原因 但有点奇怪的是,每隔一段时间,我们服务接口就会有一小波499超时,经过 阅读全文
posted @ 2022-06-19 19:25 扣钉日记 阅读(1703) 评论(0) 推荐(3) 编辑
摘要:耗时几个月,终于找到了JVM停顿十几秒的原因原创:打码日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 简介 最近我们系统出现了一些奇怪的现象,系统每隔几个星期会在大半夜重启一次,分析过程花费了很长时间,令人印象深刻,故在此记录一下。 第一次排查 由于重启后,进程现场信息都丢失了,所以这个问题非常难以排查,像常规的jsta 阅读全文
posted @ 2022-03-26 20:46 扣钉日记 阅读(2122) 评论(0) 推荐(0) 编辑