vlambda博客
学习文章列表

性能测试工作手册:SWAP的监控

swap的监控

swap是什么

swap是磁盘上的一块区域,可以使一个磁盘分区,也可以是一个文件,也可能是一个两种的组合。当物理内存资源紧张的时候,操作系统(Linux)会将一些不常访问的数据放到swap里。为其他常使用的进程提供更多的物理内存。当系统要访问swap里的数据的时候,操作系统再将swap上的数据加载到内存中。

上述的过程就是swap in和swap out。

操作系统的swap的设计确实可以提高内存的利用率,但是由于磁盘的IO速度和内存的IO速度相差很远,因此如果出现对swap频繁的IO,那么系统性能就会有致命的影响。

swap的大小设置

swap的大小设置(参考redhat官方建议):

物理内存 建议的交换空间大小 如果开启休眠功能建议的交换空间大小
⩽ 2GB 2 倍内存大小 3倍内存大小
2GB – 8GB 和内存大小一致 2 倍内存大小
8GB – 64GB 至少4G 1.5倍内存大小
> 64GB 至少4G 不建议设置休眠

swap的相关工具

  • 查看swap配置

单独运行 swapon启动swap,通过 swapoff关闭swap,通过swapon -s查看swap的一些信息。其中返回值中的Size表示swap的大小,单位是k。

  • 查看使用

free-m是查看内的使用情况的命令,兆为单位。

 
   
   
 
  1.                total       used       free     shared    buffers     cached

  2.    Mem:        128        119         8          0            1          22

  3.    -/+ buffers/cache:     95          32

  4.    swap:       255        0       255

其中:

 
   
   
 
  1.    1Mem数据:

  2.    total 内存总数: 128

  3.    used 已经使用的内存数: 119

  4.    free 空闲的内存数: 8

  5.    shared 当前已经废弃不用,总是0

  6.    buffers Buffer Cache内存数: 1

  7.    cached Page Cache内存数: 22

  8.    2行-/+ buffers/cache

  9.    -buffers/cache 的内存数:95 (等于第1行的 used - buffers - cached)

  10.    +buffers/cache 的内存数: 32 (等于第1行的 free + buffers + cached)

  11.    3行就是swap,表示swap共有255,全部空闲。