
获得徽章 5
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
赞了这篇文章
UU们,项目上碰到难题了,不知道该如何排查,有个接口,简单的查询功能,数据库直接查询是2ms,在用arthas的trace发现,这个方法的运行时间会由刚重启应用或者重启数据库的2ms到200ms;
目前排查了CPU,没有超过40%,一般都在10~20%徘徊,GC后的内存曲线也是健康的锯齿形状,而且没有一次FGC的情况,基本上可以排查内存溢出或泄漏了,arthas监控线程的CPU占比也没超过10%;druid上连接池的数量也是没超过20,远远小于在配置中设的500,而tomcat活跃线程也再200左右徘徊,小于设置的1000;咋一看各项指标似乎是正常的,但系统的某些功能就是会随着运行时间而逐渐卡顿,而重启数据库或者应用,访问速度就正常了,这应该怎么排查?
目前排查了CPU,没有超过40%,一般都在10~20%徘徊,GC后的内存曲线也是健康的锯齿形状,而且没有一次FGC的情况,基本上可以排查内存溢出或泄漏了,arthas监控线程的CPU占比也没超过10%;druid上连接池的数量也是没超过20,远远小于在配置中设的500,而tomcat活跃线程也再200左右徘徊,小于设置的1000;咋一看各项指标似乎是正常的,但系统的某些功能就是会随着运行时间而逐渐卡顿,而重启数据库或者应用,访问速度就正常了,这应该怎么排查?
展开
5
1
赞了这篇文章
赞了这篇文章