2020-03-23 服务器部分功能不可用问题查找思路

2020-04-02  本文已影响0人  稳_zzx

1、查询端口状态

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

2、查看jvm堆栈和线程的情况

https://blog.csdn.net/coslay/article/details/44802497

线程详情查看:

https://www.jianshu.com/p/2a94baa58647

3、linux java 应用开启 jmx监控

https://www.cnblogs.com/xinfang520/p/10481632.html

4、jmap、jstack、jps无法连接jvm解决办法:

20176: 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

https://blog.51cto.com/zhangshaoxiong/1310166

常规逻辑:

1、先查看top查看主要占用的进程id 

2、top -Hp 进程ID  ;找到对应的线程id

3、/usr/local/tools/jdk1.8.0_212/bin/jstat -gcutil 19351 1000 5;每隔1秒,一共刷新5次, 进程id 下的堆栈回收情况

4、/usr/local/tools/jdk1.8.0_212/bin/jstack -F 19021 >/usr/local/app/web-t.log  ,然后查看,里面对应线程id 的执行状态,找出问题所在。

5、本地运行jvisualvm.exe,远程开启jxm,实时查看远程环境的jvm是情况,便于定位线程和问题

上一篇 下一篇

猜你喜欢

热点阅读