查看cpu相关信息cat /proc/cpuinfo

  • processor:逻辑cpu序号从0开始

  • physical id:物理cpu序号

  • cpu cores:当前physical cpu的核数,根据physical id可判断

  • cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

#物理cpu个数

  • cat /proc/cpuinfo | grep "processor" | wc -l

#逻辑cpu个数(等于所有物理cpu的所有核数相加)


查看内存使用情况:free


wKiom1WcugzAuehtAABhpxvCp-I541.jpg

  • buffers:buffer cache针对磁盘块读写的磁盘缓存大小

  • cached:cached cache针对文件inode读写的磁盘缓存大小

  • -buffers/cache:真正被用于程序占用的内存数(used-buffers-cached)

  • +buffers/cache:可用的内存数(free+buffers+cache)

#即被挪用的内存数看+buffers/cache就ok了

一般只要swap交换空间没被使用,就表示服务器内存是够用的


查看硬盘使用情况

查看磁盘和分区信息:fdisk -l

查看文件系统信息:df

  • df [-m 以MB的方式显示大小] [-k 以KB的方式显示大小] [-h 以GB/MB/KB的方式] [-i 以inode数量显示] [-a 列出所有文件系统包括/proc等特殊系统] [-T 显示文件系统类型] [-H 以1024=1000的方式显示]

  • df读取的是superblock内的数据

查看某目录大小:du

  • du [-s 仅列出总量] [-S 不包括子目录的统计] [-a 列出所有统计,包括文件] [-c 最后加上总计] [-h] [-k] [-m]

  • 应用:du -s * | sort -rn | head -n 10 #列出当前目录下最大的10个目录或文件

[root@www ~]# du -s * | sort -rn | head

38928     httpd-2.4.12

13448     apr-1.5.2

12580     apr-util-1.5.4

4940     httpd-2.4.12.tar.bz2

1008     apr-1.5.2.tar.gz

856     apr-util-1.5.4.tar.gz

24     install.log

8     install.log.syslog

4     index.html.1

4     index.html

查看硬盘的I/O性能:iostat -x -k 1 3 #每秒一次共三次

wKioL1Wcu9vQYR2cAAE6nyx-iLI452.jpg

     注意以下两点

  • %util:一秒中I/O操作时间的百分比,即一秒内有多少时间I/O队列是非空的,若接近%100表示I/O请求过多,超负荷,磁盘存在瓶颈

  • await:平均每次设备I/O操作的等待时间,一般应低于5ms(参考来自于书本),若大于5ms表示磁盘I/O压力大,应升级硬件或调优


查看系统平均负载

当服务器响应变慢时,可能是负载出现问题,应查看系统平均负载,即cpu平均负载,看看是否有大量的进程在排队,特点时间内运行队列的平均进程数可以反映系统繁忙程度

uptime

  • load average:过去的1分钟 5分钟 15分钟内进程队列中的平均进程数量,这三个值一般不能大于系统逻辑cpu数量,偶尔超出倒是没问题

top:第一行的内容就是uptime的内容

  • 还可查看进程优先级,cpu使用率,内存使用率等


查看系统整体性能状态

vmstat:是一个很全面的系统性能分析工具,可以观察系统的进程状态、内存使用情况、虚拟内存使用情况、磁盘I/O、中断、上下文切换、cpu使用情况等信息。还可以在进行服务器性能测试时候作为监控标准的工具

wKioL1Wcuu-C34g0AADmXHtgmkk048.jpg

  • procs

r:等待运行的进程数,多少个进程分到了cpu,一般不超过cpu个数是正常的值

b:处于非中断睡眠状态的进程数,即在等待资源分配的进程数,阻塞状态

  • memory

swpd:虚拟内存使用情况(KB)

free:空闲的内存(KB)

buff:用作缓存的内存数,缓存的是文件目录基本内容,在磁盘中的位置、权限等(KB)

cache:用作文件缓存的内存数,对打开的文件做缓存,提高执行效率和使用性能(KB)

  • swap

si:从磁盘交换到内存的交换页数量,即每秒使用的虚拟内存数量(KB/s)

so:从内存交换到磁盘的交换页数量(KB/s)

  • io

bi:发送到块设备一般即磁盘的块数(块/s)

bo:从块设备接收到的块数(块/s)

  • system

in:每秒中断次数,包括时钟中断

cs:每秒的上下文切换次数

  • cpu(显示cpu的总使用百分比)

us:用户cpu使用时间

sy:系统cpu使用时间,如进行I/O操作等

id:空闲时间

wa:等待I/O的cpu时间,一般为0

  • 一般us+sy+id=100,因为我的测试虚拟机没有运行任务,所以us和sy都是0

  • 一般us+sy<70表示系统性能较好,若大于85则可能需要对系统进行检查