Linux查看系统性能

1. 查看内存和CPU信息

cat /proc/cpuinfo                   cpu信息

cat /proc/meminfo |grep MemTotal    内存信息

查看物理cpu个数:cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -l

查看逻辑cpu个数:cat /proc/cpuinfo | grep 'processor' | wc -l

查看单cpu是几核:cat /proc/cpuinfo | grep 'cores' |uniq

查看cpu主频:    cat /proc/cpuinfo | grep 'MHz'

查看cpu是32位还是64位: getconf LONG_BIT

                                              echo $HOSTTYPE

                                              uname -a

2. 查看主机运行时间和Linux系统负载

uptime

[linux @ localhost]$ uptime
10:19:04 up 257 days, 18:56,  12 users,  load average: 2.10, 2.10,2.09

10:19:04 //系统当前时间
up 257 days, 18:56 //主机已运行时间,时间越大,说明你的机器越稳定。
12 user //用户连接数,是总连接数而不是用户数
load average // 系统平均负载,统计最近1,5,15分钟的系统平均负载

信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。系统平均负载是指在特定时间间隔内运行队列中的平均进程数。在0.00-1.00之间正常。

3. 实时监控CPU

top

top:实时显示系统中各个进程的资源占用情况,类似于windows的任务管理器。

Linux查看系统性能

 第一行:

15:39:48 当前系统时间
up 293 days, 21:48 已经运行了293天21小时48分
3 users 当前有3个用户登录
load average: 0.01, 0.04, 0.09 分别为1分钟,5分钟,15分钟的系统负载。这个数除以逻辑CPU的数量,如果大于5,说明系统在超负荷运行了


第二行:

在Linux系统中,一般把进程和线程统称为任务
共有279个进程,其中1个在运行(running),278个休眠(sleeping),0个停止(stopped),0个僵尸(zombie)


第三行:


CPU使用情况:us(用户空间)占用的CPU百分比
sy(内核空间)
ni(改变过优先级的进程)
id(空闲)
wa(IO等待)
hi(硬中断)
si(软中断)


第四行: 内存状态

第五行: swap交换分区信息


第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。
如果出于习惯去计算可用内存数,这里有个近似的计算公式:第四行的free + 第四行的buffers + 第五行的cached,按这个公式此台服务器的可用内存:18537836k +169884k +3612636k = 22GB左右。
对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。

第六行: 空行(实际是与用户交互的区域)

第七行:各进程的状态监控


PID:进程id
USER:进程所有者
PR:进程优先级
NI:nice值。负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)

4. 实时监控内存

free

free:显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存

查看内存实时情况
free –h (以G为单位)
free –m (以M为单位)
free (以K为单位)
free –s 10(间隔10s刷新一次)周期性查看内存使用情况

Linux查看系统性能