关于一次线上异常问题咨询

2022-04-20 14:15:02 +08:00
 xuxuxu123
问题产生背景:
公司项目,java 语言开发的;打出来三个 jar 包在服务端运行,服务器配置 8 核 16G 内存;昨天下午 18:56 分出现其中某个 jar 包不再产生日志,程序进程也还在,没有假死;没有报错,也没有产生任何日志,也没有抛任何异常信息;就像是程序已经被杀死了一样,但实际上进程还在;当时这个时间点,前几分钟服务器内存占用率 90%多;
以前从来没有遇到这种情况,本人也非后端开发;但想问下各位大佬,有没有思路排查这类问题;
感谢
1465 次点击
所在节点    Java
9 条回复
defunct9
2022-04-20 14:20:54 +08:00
开 ssh ,让我上去看看
hidemyself
2022-04-20 14:24:14 +08:00
信息量太少了,如果是周期性发生的话,可以尝试看下是不是有大量 waiting 状态的线程
看下服务器的 TCP 连接数之类的
des
2022-04-20 14:27:53 +08:00
信息量太少了
先从机器负载、线程堆栈、文件描述符数查起吧
wowawesome
2022-04-20 14:27:55 +08:00
是不是一堆 CLOSE_WAIT?
jmap dump 出来分析一下
xuxuxu123
2022-04-20 14:53:20 +08:00
@hidemyself
@des
@wowawesome
这个 jar 包不提供 web 服务;只处理定时任务,以及向上游资源商同步数据,然后写入数据库;

感谢回复;我确实有些迷,不知道如何分析
rapperx2
2022-04-20 15:03:10 +08:00
看一楼,直接提供实质性解决
viakiba
2022-04-20 18:51:31 +08:00
先 top 一下 看看 cpu 使用情况,这个进程要是 cpu 用的特别多,那就 jstack 搞一下线程快照看下 是不是死循环啥的了 。堆内存也可以分析分析。 推荐一个 分析工具 https://arthas.aliyun.com/doc/
xuxuxu123
2022-04-20 19:46:46 +08:00
@viakiba 感谢
biubiuF
2022-04-21 00:04:00 +08:00
应该是 log 包冲突了,检查下 log4j 的 bind

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/848134

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX