前言 版本上线时发现fastjson的toString方法的返回的字符串与与之前版本的toString方法返回的字符串不相同,这导致依赖toString进行md5计算所得到的结果不相同,更进一 ...
可能频繁创建了大对象或者eden 区设置过小 大对象直接分配在老年代中,导致老年代空间不足 gt 从而频繁 gc 可能老年代的空间设置过小了 Minor GC 几个对象就大于老年代的剩余空间了 . . 如果一次 full GC 后,剩余对象不多,那么说明 Eden 的空间设置太小,导致大量短生命周期的对象被分配到了老生代。 . 如果一次 full GC 后,老生代的变化不大,那么是老年代分配空间 ...
2020-07-03 11:00 0 900 推荐指数:
前言 版本上线时发现fastjson的toString方法的返回的字符串与与之前版本的toString方法返回的字符串不相同,这导致依赖toString进行md5计算所得到的结果不相同,更进一 ...
某线上应用在进行查询结果导出Excel时,大概率出现持续的FullGC。解决这个问题时,记录了一下整个的流程,也可以作为一般性的FullGC问题排查指导。 后续review这篇文章的时候,发现排查过程还是不够详细,虽然最终解决了问题,但是仍缺少对根因对分析,并且遗漏了一些所需技能对整理 ...
前言 本文介绍服务器内运行的 Java 应用产生的 OOM 问题 和 CPU 100% 的问题定位 1. 内存 OOM 问题定位 某Java服务(比如进程id pid 为 3320)出现OOM,常见的原因为: 内存分配的确实小了,而正常业务使用了大量的内存 某个对象被频繁申请 ...
使用场景 我们在使用系统时,有时请求和响应会变得特别慢,系统也变得很卡。 有可能是FullGC的问题,可以逐步地进行排查。 使用jps和top确定进程号pid jps可以列出正在运行的jvm进程,并显示jvm执行主类名称( main()函数所在的类),以及进程id。 命令 ...
处理过线上问题的同学基本上都会遇到系统突然运行缓慢,CPU 100%,以及 Full GC 次数过多的问题。 当然,这些问题最终导致的直观现象就是系统运行缓慢,并且有大量的报警。 本文主要针对系统运行缓慢这一问题,提供该问题的排查思路,从而定位出问题的代码点,进而提 ...
0.前言 JVM自带了一堆可排查JVM运行状况的工具。But,每个工具的使用姿势、使用后果均不同。作为开发人员,需要清楚每个工具的执行结果,不然会出现随手执行一个命令、引发严重线上故障的场景。 这里简要说明几个使用命令 jmap jmap ...
当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 遇到问题无法在线上 debug,难道只能 ...
起因:周末测试发现线上mq消息积压了十几万的消息,如下图所示 每个队列几万的消息,立即采取紧急措施,将队列下线重新上线。 处理积压消息的量,调用量起来了,很快消息积压解决了。开始事件复盘。 首先分析是否是消息消费能力跟不上消息产生原因,看入口消息,QPS是29.6 消息消费 ...