JAVA服务假死,请求无法响应什么问题?

作者站长头像
站长
· 阅读数 21

某个服务下的所有url请求(包括不存在的url)都无法响应,一直转圈圈,初步排查如下:top -Hp pidJAVA服务假死,请求无法响应什么问题?

系统内存 free -mJAVA服务假死,请求无法响应什么问题?

GC信息JAVA服务假死,请求无法响应什么问题?

线程堆栈信息。。。信息过长发不出来,我把链接贴上来https://blog.csdn.net/a343781436/article/details/139834298?cs...

日志信息没有抛异常:JAVA服务假死,请求无法响应什么问题?

到底是啥问题呢,谢谢各位大佬~

回复
1个回答
avatar
test
2024-06-29

在这里回复你吧,能贴图:是的,我自己使用debug调试修改了变量让poller线程结束了,然后再次访问现象就跟你描述的是一样的,socket请求能接收,但是没人处理读写,导致浏览器一直是个X在转圈圈等待。answer image查看Poller源码查看是个死循环,只要循环退出Poller线程就结束了,退出有两个条件第一个是tomcat关闭close为true,他就breack跳出循环了,我debug就是修改这个导致他退出的answer image还有个就是在我在第一张图上红框框住的部分,这部分没有进行tryCatch一旦出现异常,就会导致退出。所以检查你OOM的原因,就是他导致的。

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容