今天早晨还没有起床就收到服务器故障的短信,错误信息内容是内存不足。赶紧起床,打开电脑查看服务器内存使用情况:

 

       仔细看,物理内存还有将近1GB没有使用。但是swap已经开始被使用。怀疑是不是swappiness文件的值没有更改。

       说明:在centos里面,swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。两个极端,对于Centos的默认设置,这个值等于60,建议修改为10。具体这样做:

 
  
  1. sysctl vm.swappiness=10  
  2.  
  3. 但是这只是临时的修改,如果系统重启会恢复默认的值60,所有还需要做下一步:  
  4.  echo vm.swappiness=10 >> /etc/sysctl.conf  
  5.  
  6. 这样就可以了。 

      最后重新加载swap虚拟内存:

 
  
  1. swapoff -a    //关闭虚拟内存  
  2. swapon  -a    //开启虚拟内存 

      最后再次查看内存使用情况:

       通过图片,最后SWAP:可以看出虚拟内存已经被释放。