SWAP颠簸

所谓SWAP颠簸,字面理解就是内存和硬盘的数据交换比较频繁。 

听别人说YouTube的MySQL数据库服务器就曾一度遇到SWAP颠簸的问题,解决办法是删掉SWAP分区! 

艺高人胆大!不过对于我们这些菜鸟来说,估计不敢用删除SWAP分区的方法去解决问题,其实我们还有比较文雅的解决方法: 

如果使用的MySQL的表类型是Innodb的话,只要设定innodb_flush_method=O_DIRECT,就可以让MySQL别老去用swap。具体可以参考此链接。 

广义一点来看,现在服务器的内存都已经很大了,我们完全可以通过调整内核参数来限制swap的使用: 
echo 0 > /proc/sys/vm/swappiness 
缺省swappiness一般是60,通过把它设定为0,可以让系统尽可能别去用swap。