java线程中的tid_如何通过已知的PID / TID获得JVM线程名称/ ID

昨天,我们在Debian上运行的tomcat

6服务器出现了一个奇怪的问题:随着时间的推移,第二次长时间冻结/中断的时间增加了。在冻结期,我们所有独立的Web应用程序都没有响应。中断具有很高的规律性,在一个小时的过程中,中断阶段变得比活动阶段更长,直到我们重新启动服务器以解决问题为止。现在,我们想找出它是什么,或者找到一种解决方案来找出它再次发生的情况!

在每个中断阶段,tomcat线程之一会100%使用24个内核中的一个,因此我们假设该线程所做的任何事情都会冻结整个tomcat。可悲的是,我们不知道该线程正在处理什么。

将其放入我们广泛的日志文件条目中并找到JVM线程将很容易,但是如果它是一个不受我们完全控制的线程怎么办?同步TID / Java-Thread-

ID快照带来的烦恼又如何呢?这就引出了我的核心问题:

是否有办法从已知的Linux TID获取JVM线程名称/ ID?

我的希望很小,但是也许对JVM有一个跨进程调用,或者还有一个我尚未考虑的想法。

我们已经在该服务器上运行了Yourkit探查器,但是在中断阶段,它无法记录任何内容,因此我们找不到有问题的线程。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值