Swap分区,即交换区,系统在物理内存不够时,与Swap进行交换。 其实,Swap的设置及调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。

Swap分区在系统的运行内存不够用的时候,把物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。

建立Swap分区

在物理机内存不足的情况下,需要在Ubuntu系统中创建交换分区。方法如下:

1
2
3
4
sudo fallocate -l 1G /swapfile    //创建大小为1G的swapfile文件
sudo chmod 600 /swapfile //设置权限为600
sudo mkswap /swapfile //设置swap空间
sudo swapon /swapfile //激活swap空间

在”/etc/fstab“文件中添加:”/swapfile swap swap defaults 0 0“ 使swap永久生效

1
free -h //查看内存及swap状态

停用及删除swap分区

1
sudo swapoff -v /swapfile //停用swap

在”/etc/fstab”文件中删除有效 swap 的行

1
sudo rm /swapfile //删除swapfile文件

系统性能监视

Swap空间的分配固然很重要,而系统运行时的性能监控却更加有价值。通过性能监视工具,可以检查系统的各项性能指标,找到系统性能的瓶颈。本文只介绍一下在Solaris下和Swap相关的一些命令和用途。

最常用的是Vmstat命令(在大多数Unix平台下都有这样一些命令),此命令可以查看大多数性能指标。

命令说明:

  • vmstat 后面的参数指定了性能指标捕获的时间间隔。
    • 3表示每三秒钟捕获一次。第一行数据不用看,没有价值,它仅反映开机以来的平均性能。从第二行开始,反映每三秒钟之内的系统性能指标。
  • 这些性能指标中和Swap有关的包括以下几项:
  • procs下的w它表示当前(三秒钟之内)需要释放内存、交换出去的进程数量。
  • memory下的swpd它表示使用的Swap空间的大小。
  • Swap下的si,so
    • si表示当前(三秒钟之内)每秒交换回内存(Swap in)的总量,单位为kbytes;
    • so表示当前(三秒钟之内)每秒交换出内存(Swap out)的总量,单位为kbytes。

以上的指标数量越大,表示系统越忙。这些指标所表现的系统繁忙程度,与系统具体的配置有关。系统管理员应该在平时系统正常运行时,记下这些指标的数值,在系统发生问题的时候,再进行比较,就会很快发现问题,并制定本系统正常运行的标准指标值,以供性能监控使用。


本站由 澄哥 使用 Stellar 主题创建。


本页点击量本站点击量次。
您是本站的第个小伙伴
本站已稳定运行