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