求助>Unsafe.defineClass挂起-反射速度慢>
17回复
2周前

Unsafe.defineClass挂起-反射速度慢



请问有人见过这个问题吗?我在Java 8 / SpringBoot 1.5.13 / Tomcat 8.5 Web应用程序中观察到运行时间极长的请求(> 30s)。而且卡顿时间会随程序运行时间变久。但是大部分请求的响应还是正常的。卡顿发生时的cpu负载增长到100%,过几分钟后会自己降下来。

Threaddumps显示Unsafe.defineClass正在挂起:

"http-nio-8080-exec-9" #254 daemon prio=5 os_prio=0 tid=0x00007f8a98b4f000 nid=0x2258 runnable [0x00007f89fb0b0000]
   java.lang.Thread.State: RUNNABLE
	at sun.misc.Unsafe.defineClass(Native Method)
	at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:63)
	at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:399)
	at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:394)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:393)
	at sun.reflect.MethodAccessorGenerator.generateMethod(MethodAccessorGenerator.java:75)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:53)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.beans.BeanUtils.copyProperties(BeanUtils.java:618)
	at org.springframework.beans.BeanUtils.copyProperties(BeanUtils.java:538)
	at com.haigui.stateaction.action_impl.DisputeSubmit.insertDisputeInfo(DisputeSubmit.java:128)

卡顿发生时的JVM情况:
image.png

2215 阅读
请先登录,再评论

回复列表

大空翼2周前

你做线程Dump的时候,正好那个时候CPU使用很高吗

21小时前
回复 你假笨:

好的,我试试,多谢假大~~~

回复
你假笨21小时前
回复 宓:

那就是arms导致的 去掉肯定没问题了😂

回复
21小时前
回复 你假笨:

能不能麻烦假大截个图指出下agent在哪里?我代码里是没有加agent的,用到agent的地方应该只有阿里云的arms监控

回复
查看更多