查看进程

top命令

top命令可以实时显示各个线程情况top命令的“-H”选项,该选项会列出所有Linux线程。在top运行时,你也可以通过按“H”键将线程查看模式切换为开或关。根据Top命令查找出进程的pid

ps命令

ps命令可以查出进程的详细信息
-e 显示所有进程。
-f 全格式。
-h 不显示标题。
-l 长格式。
-w 宽输出。
a 显示终端上的所有进程,包括其他用户的进程。
r 只显示正在运行的进程。
u 以用户为主的格式来显示程序状况。
x显示所有程序,不以终端机来区分。

线上问题定位
  • 通过top命令查找出占用资源多的进程
  • 通过ps aux | grep PID命令,确定是tomcat进程出现了问题
  • ps -mp pid -o THREAD,tid,time查找出线程列表,找出耗费资源的线程,将pid转化成16进制 printf “%x\n” tid
  • jstack pid |grep tid -A 30打印出堆栈信息