jstack Unable to open socket file异常处理方法

1.问题

某台服务器出现假死的现象,服务进程在,但是就是不工作。于是想定位下,先看了下服务器本身的状态都是OK的,然后看下服务的状态,先执行如下的命令,发现服务是存在的,如下:

执行jps -ml输出如下:

然后执行jstack 2276,报出如下的错误:

2276: Unable to open socket file: target process not responding or HotSpot VM not loaded
The -F option can be used when the target process is not responding

2.解决

~ jstack 13179 | more
2019-06-13 17:15:44
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.60-b23 mixed mode):

"Attach Listener" #137 daemon prio=9 os_prio=0 tid=0x00002b7b64001000 nid=0x3db4 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Windows IOHub Watcher for IOHub#1: Selector[keys:0, gen:0] / Computer.threadPoolForRemoting [#4]" #90 daemon prio=5 os_prio=0 tid=0x00002b7bc00f7800 nid=0x340c in Object.wait() [0x00002b7c
1c402000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at org.jenkinsci.remoting.protocol.IOHub$IOHubSelectorWatcher.run(IOHub.java:549)
        - locked <0x00000007a8e31928> (a java.lang.Object)
        at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
        at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:59)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

"IOHub#1: Selector[keys:0, gen:0] / Computer.threadPoolForRemoting [#3]" #89 daemon prio=5 os_prio=0 tid=0x00002b7bc00f6000 nid=0x340b runnable [0x00002b7c1cf0d000]
   java.lang.Thread.State: RUNNABLE
        at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
        at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
...........................
  1. 然后再通过 jstat -gcutil pid 时间间隔(ms) 查看 jc 信息
jstat -gcutil 13179 1000
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 99.95   0.00  49.14  14.96  91.97  84.24     10    0.444     3    0.317    0.761
 .........

其中: S0:年轻代第一个幸存区(survivor)使用容量占用百分比

S1:年轻代第二个幸存区(survivor)使用容量占用百分比

E:年轻代伊甸园区(eden)使用容量占用百分比

O:老年代使用容量占用百分比

P:perm代使用容量占用百分比(JDK7-)

M:MetaSpace元空间使用容量占用百分比(JDK8+)

CCS:压缩使用比例

YGC:从应用程序启动到当前采样时年轻代gc的次数

YGCT:从应用程序启动到当前采样时年轻代gc的时间

FGC:从应用程序启动到当前采样时老年代gc的次数

FGCT:从应用程序启动到当前采样时老年代gc的时间

GCT:从应用程序启动到当前采样时gc总耗时

3.结论

jstack需要使用与进程一致的用户才能执行

展开阅读全文

页面更新:2024-05-17

标签:想定   百分比   间隔   应用程序   结论   进程   容量   异常   命令   比例   次数   状态   年代   年轻   服务器   时间   方法   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top