进程查询和CPU飙高排查方案

本文介绍了在Windows和Linux系统中如何通过端口号或PID来查询和管理进程,包括使用netstat、tasklist、taskkill、lsof和ps命令。同时,提供了排查CPU高使用率的方法,如使用top命令排序进程,利用jstack分析Java进程中的线程状态,以及非Java进程的线程资源消耗检查。
摘要由CSDN通过智能技术生成

一、进程查询

Window:

根据端口号查询进程pid

netstat -ano | grep [port]

根据pid查询任务

tasklist | grep [pid]

根据pid杀死任务

taskkill /pid [pid] /f

Linux

根据端口号查询进程pid

1)netstat -tunlp | grep [port]
2)lsof -i:[port]
3)lsof -i | grep [port]

根据pid查询任务

ps -ef | grep [pid]

二、CUP飙高原因排查

1、查询占用CPU最高的进程pid

top查询所有进程的CPU情况,然后按shift+p按照CPU排序

2、查询进场pid中资源消耗最高的线程(列名也是pid)

top -H -p [pid]

3、将线程id转换为16进制

printf '%x\n' [线程id]

4、查询线程状态信息

java进程:jstack [进程id] | grep -A 10 [线程id的16进制] 
非java进程:perf top -p [线程的id,不是16进制的]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值