Top 命令数据分析

一、top 命令详解

  • 当前时间  20:27:12
  • 当前系统运行时间  3:18秒    
  • 1个用户   
  • 系统负载平均长度为  0.00,0.00,0.00(分别为1分钟、5分钟、15分钟前到现在的平均值)

  • 第二行为进程状态的汇总   R 运行态、S 睡眠态、T 被跟踪或已停止、Z 僵尸态

解析:

0.0%us

用户空间占用CPU百分比

0.0%sy

内核空间占用CPU百分比

0.0%ni

用户进程空间内改变过优先级的进程占用CPU百分比

100.0%id

系统目前空闲CPU百分比

0.0%wa

等待输入输出I/O的CPU时间百分比

0.0%hi

硬中断占用CPU百分比

0.0%si

软中断占用CPU百分比

  •  当 id 持续过低时,表示系统迫切需要解决 cpu 资源问题
  •  cpu 的使用率=1-%id

解析:

Men:1906556k total

物理内存总量

Men:695372k  used

使用的物理内存总量

Men:1211184k  free

空闲内存总量

Men:86244k  buffers

用作内核换成的内存量

Swap:2097144k  total

交换区总量

Swap:0k  used

使用的交换区总量

Swap:2097144k  free

空闲交换区总量

Swap:175672  cached

缓冲的交换区总量

  •  buffer 和 cache 的作用是缩短 I/O 系统调用的时间(缓存,会占物理内存),如果 cache 的值很大,说明 cache 里面的文件很多,如果频繁的访问文件都能命中的话,很明显这样会比读取磁盘调用快,磁盘的 I/O 必定会减小。 但是如果系统内存不足时,buffer/cache 所占用的内存可以通过 drop cache 进行释放出来
  •  物理内存总数 Mem_total = Men_used + Mem_free
  •  实际使用的物理内存数 - buffers/cache = used - buffers - cache
  •  实际可用的物理内存数 + buffers/cache = free + buffers + cache
  •  交换分区对应的内存总数 Swap_total = swap_used + swap_free

解析:

%CPU

进程所占用的CPU的百分比

%MEM

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

二、性能分析过程

检查 RT(响应时间)

完成一笔业务的时间  2/5/8原则

检查 TPS(吞吐量)

TPS 大时 RT 小,说明性能好

检查 web 服务器资源损耗

1.检查 cpu 使用率,确认用户 cpu 和系统 cpu 占用情况

2.检查内存使用情况

3.检查磁盘使用情况

4.检查占用的带宽

5.分析 web 页面确认是什么请求影响了性能

6.是否存在前端图片过多加载时间过长问题

是否有 DB 性能问题

1.数据库最大连接数

是否是 SQL 问题

1.不合理的查询 SQL

2.索引是否正常使用

3.是否有做临时表缓存

三、性能指标参考值

1.cpu

注意 >= 50%

告警 >= 70%

严重 >= 90%

2.内存

注意 >= 50%

告警 >= 70%

严重 >= 80%

3.系统 IO 利用率(I/O(input/output)字面理解就是输入/输出,输入指的是对磁盘写入数据,输出指的是从磁盘读出数据。)

注意 >= 40%

告警 >= 60%

严重 >= 80%

原文地址:https://www.cnblogs.com/ZhengYing0813/p/11906087.html