目录

一、jps命令。

二、ps命令。

三、top命令。

四、free命令。

五、df命令。


查看应用的CPU、内存使用情况,使用jps、ps、top、free、df命令查看。

一、jps命令。

可以列出本机所有java应用程序的进程pid。

Linux java查看内存消耗 linux查看java程序内存_Linux java查看内存消耗

jps [ options ] [ hostid ] 
选项 
-q  仅输出VM标识符,不包括class name,jar name,arguments in main method。 
-m  输出main method的参数。 
-l  输出完全的包名,应用主类名,jar的完全路径名。 
-v  输出jvm参数。
-V  输出通过flag文件传递到JVM中的参数(.hotspotrc文件或-XX:Flags=所指定的文件)。
-Joption 传递参数到vm。

二、ps命令。

显示当前系统的进程状态。

查看哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、进程占用的资源等。

[root@xxx /]# ps -l

Linux java查看内存消耗 linux查看java程序内存_性能分析工具_02

F

代表这个程序的旗标 (flag), 4 代表使用者为 super user。

S

代表这个程序的状态 (STAT)。

UID

用户身份证明。

PID

程序的ID,进程识别号,进程标识符。

PPID

当前进程的父进程ID。

C

CPU使用的资源百分比。

PRI

Priority优先执行序。

NI

nice值,负值表示高优先级,正值表示低优先级。

ADDR

kernel function 指出该程序在内存的那个部分。如果是个running #的程序,一般就是“-”。

SZ

使用掉的内存大小。

WCHAN

目前这个程序是否正在运作当中,若为 - 表示正在运作。

TTY

登入者的终端机位置。

TIME

使用掉的 CPU 时间。

CMD

所下达的指令。

查找指定进程格式,根据关键字过滤。
ps -ef | grep 进程关键字

[root@xxx /]# ps -ef | grep xinxin-es-jd

Linux java查看内存消耗 linux查看java程序内存_物理内存_03

显示所有进程信息,连同命令行。
ps -ef

[root@xxx /]# ps -ef

Linux java查看内存消耗 linux查看java程序内存_查看CPU使用情况_04

三、top命令。

实时显示process的动态,实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

[root@xxx ~]# top

Linux java查看内存消耗 linux查看java程序内存_查看内存使用情况_05

top - 00:32:08 up 150 days, 21:35,  2 users,  load average: 0.91, 1.19, 1.48

23:10:41

系统当前时间。

days

系统启动后到现在的运行时间。

users

当前登录到系统的用户(终端数)。

load average

当前系统负载的平均值,系统在最近1分钟、5分钟、15分钟内,CPU的平均负载情况。

Tasks: 101 total,   1 running,  97 sleeping,   3 stopped,   0 zombi

total

当前系统进程总数量。

running

当前运行中的进程数量。

sleeping

当前处于等待状态中的进程数量。

stopped

停止的系统进程数量。

zombie

僵尸进程数量。

 

%Cpu(s): 13.4 us,  1.0 sy,  0.0 ni, 84.6 id,  0.0 wa,  0.7 hi,  0.3 si,  0.0 st

us

用户空间占用CPU百分比,表示用户空间程序的cpu使用率,没有通过nice调度。

sy

内核空间占用CPU百分比,系统空间的cpu使用率,主要是内核程序。

ni

用户进程空间内改变过优先级的进程占用CPU百分比,用户空间且通过nice调度过的程序的cpu使用率。

id

空闲cpu,空闲CPU百分比。

wa

等待输入输出的CPU时间百分比。

hi

cpu处理硬中断的数量。

si

cpu处理软中断的数量。

st

被虚拟机偷走的cpu。

MiB Mem :   1826.7 total,     85.9 free,   1477.8 used,    263.1 buff/cache

total

物理内存总量。

free

空闲内存总量。

used

使用的物理内存总量。

buff/cache

缓存,用作内核缓存的内存量。

 

MiB Swap:      0.0 total,      0.0 free,      0.0 used.    182.8 avail Mem 

total

交换分区总量。

free

空闲交换分区总量。

used

使用的交换分区总量。

avail Mem

虚拟内存缓存。

 

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND   

PID

进程的ID,进程号。

USER

进程所有者,用户名。

PR

priority优先级,进程的优先级别,越小越优先被执行。

NI

nice值。负值表示高优先级,正值表示低优先级。

VIRT

进程占用的虚拟内存,进程使用的虚拟内存总量。

RES

进程占用的物理内存,进程使用的、未被换出的物理内存大小,单位kb。

SHR

进程使用的共享内存,共享内存大小,单位kb。

S

进程的状态。

S:休眠、睡眠;R:正在运行;Z:僵死状态、僵尸进程;N:进程优先值为负数;D:不可中断的睡眠状态;I:空闲状态,用在不可中断睡眠的内核线程上。T:暂停或者跟踪状态。X:进程已经消亡。

%CPU

CPU使用率,进程占用CPU的使用率。

%MEM

进程使用的物理内存和总内存的百分比。

TIME+

进程使用的CPU时间总计,单位1/100秒。进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。

COMMAND

执行的命令,进程启动命令名称。

 

查看某一个PID应用的内存使用情况。

top -p PID 

[root@xxx /]# top -p 7098

Linux java查看内存消耗 linux查看java程序内存_物理内存_06

 

四、free命令。

显示内存状态。

显示当前系统未使用和已使用的内存数目,显示被内核使用的内存缓冲区。

显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。

[root@xxx ~]# free

Linux java查看内存消耗 linux查看java程序内存_性能分析工具_07

Mem:内存的使用信息。
Swap:交换空间的使用信息。

total

系统总的可用物理内存大小,总计物理内存的大小。

used

已使用多大,已被使用的物理内存大小。

free

可用有多少,还有多少物理内存可用。

shared

多个进程共享的内存总额,被共享使用的物理内存大小。

buff/cache

磁盘缓存的大小,被buffer和cache使用的物理内存大小。

available

还可以被应用程序使用的物理内存大小,大概的计算方法available = free + buffer + cache。

五、df命令。

文件系统磁盘使用情况统计。
检查linux服务器的文件系统的磁盘空间占用情况,可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

[root@xxx /]# df

Linux java查看内存消耗 linux查看java程序内存_物理内存_08

Filesystem

文件系统,文件系统的名称。

1K-blocks

1K-块,指定一个特定的文件系统1K-块1K是1024字节为单位的总内存。

Used

已用。

Available 

可用。

Use%

已用%,使用的内存的百分比。

Mounted on

挂载点,文件系统的挂载点。

 

[root@xxx /]# df -h

Linux java查看内存消耗 linux查看java程序内存_物理内存_09

Filesystem

文件系统,文件系统的名称。

Size

容量。

Used

已用。

Avail

可用。

Use%

已用%,使用的内存的百分比。

Mounted on

挂载点,文件系统的挂载点。