Linux系统访问卡顿 慢

Linux系统访问卡顿、慢

      • 1、查看磁盘使用情况
      • 2、查看内存使用情况
      • 3、查看磁盘IO使用情况
      • 4、查看CPU使用情况
      • 5、iostat的查询

1、查看磁盘使用情况

[root@localhost ~]# df -h
当发现磁盘使用率很高时,那就要释放磁盘空间了,删除一些不必要的文件

查看各个目录占用磁盘空间
查看指定目录的磁盘占用情况:du -sh /home/zzt
查看当前目录下的所有一级子目录和文件的磁盘使用情况:du -sh *

Linux系统访问卡顿 慢_第1张图片

2、查看内存使用情况

[root@localhost ~]# free -g
当观察到free栏已为0的时候,表示内存基本被吃完了,那就需要释放内存
libux释放内存
sync
echo 3 > /proc/sys/vm/drop_caches
sync表示将内存缓存区内容立即同步到磁盘,为了保证安全可以多执行几次

Linux命令之sync命令详细
在这里插入图片描述

3、查看磁盘IO使用情况

[root@localhost ~]# iostat -x 1   #1表示1秒刷新一次

当发现最右侧%util很高时,表示IO就很高了,若想看哪个进程占用IO,执行iotop命令查看

Linux系统访问卡顿 慢_第2张图片
CPU值说明:

%user CPU处在用户模式下的时间百分比
%nice CPU处在带NICE值的用户模式下的时间百分比
%system CPU处在系统模式下的时间百分比
%iowait IO等待所占用的cup时间(重要) <30% (不同功能的服务器不同)
%steal 管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比
%idle CPU空闲时间百分比

注:

如果%iowait的值过高,表示硬盘存在I/O瓶颈,%idle值高,表示CPU较空闲,如果%idle值高但系统响应慢时,有可能是CPU等待分配内存,此时应加大内存容量。%idle值如果持续低于10,那么系统的CPU处理能力相对较低,表明系统中最需要解决的资源是CPU。

devicd值说明:

device 磁盘名称
tps 每秒钟发送到的I/O请求数
kB_read/s 每秒读取的block数
kB_wrtn/s 每秒写入的block数
kB_read 读入的block总数
kB_wrtn 写入的block总数

4、查看CPU使用情况

[root@localhost ~]# top
下图中粉色框里表是cpu使用情况,最右侧的id表示剩余,若很低,则表示cpu被吃完了,在top界面按shift+p对进程使用cpu排序,能看到哪些进程占用cpu较多

Linux系统访问卡顿 慢_第3张图片

5、iostat的查询

iostat -m 以m为单位显示所有信息

[root@localhost ~]# iostat -m  

Linux系统访问卡顿 慢_第4张图片
iostat -d sda 显示指定硬盘信息

[root@localhost ~]# iostat -d sda

在这里插入图片描述

iostat -t 报告每秒向终端读取和写入的字符数

[root@localhost ~]# iostat -t 2

Linux系统访问卡顿 慢_第5张图片
iostat -d -k 2 1 查看TPS和吞吐量信息

[root@localhost ~]# iostat -d -k 2 1

说明:
tps: 该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。
“一次传输”意思是“一次I/O请求”。
多个逻辑请求可能会被合并为“一次I/O请求”。“一次传输”请求的大小是未知的。
 
kB_read/s:每秒从设备(drive expressed)读取的数据量;
kB_wrtn/s: 每秒向设备(drive expressed)写入的数据量;
kB_read: 读取的总数据量;kB_wrtn:写入的总数量数据量;

Linux系统访问卡顿 慢_第6张图片
iostat -d -x -k 1 1 查看设备使用率(%util)、响应时间(await)

[root@localhost ~]# iostat -d -x -k 1 1

Linux系统访问卡顿 慢_第7张图片
Linux系统访问卡顿 慢_第8张图片
Linux系统访问卡顿 慢_第9张图片
注:

如果 %util 接近 100%,说明产生的I/O请求太多,
I/O系统已经满负荷,该磁盘可能存在瓶颈。
如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;
如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化。
如果avgqu-sz比较大,也表示有当量io在等待。

你可能感兴趣的:(linux,运维,服务器)