我使用的是阿里云的低配主机ECS,1核1G内存,linux其实是非常省内存的,一般的小博客1G内存肯定没问题,但是优化不当的话内存使用率还是会很高。在不升级配置的情况下只能开启swap(虚拟内存)了。
阿里云的服务器默认是不开启swap的,官方给出的理由是开启swap分区会导致硬盘IO性能下降,确实开启swap分区会造成阿里云主机的磁盘负载增大,影响磁盘IO性能,还会降低磁盘使用寿命。
但是不开启swap,内存使用的波动有时候会导致系统直接杀死某些进程,造成系统不稳定。
所以取舍在于你自己,如果你的主机内存使用率一直低于50%,我觉得没必要开启swap,需要的时候再开启。
这里介绍开启swap的方法
1.创建用于交换分区的文件
dd if=/dev/zero of=/mnt/swap bs=1M count=1024
注:block_size、number_of_block大小可以自定义,比如bs=1M count=1024代表设置1024M,也就是1G大小swap分区
2.设置交换分区文件
mkswap /mnt/swap
3.立即启用交换分区文件
swapon /mnt/swap
如果在/etc/rc.local
中有swapoff -a 需要修改为swapon -a
4.设置开机时自启用swap分区
修改文件/etc/fstab
中的swap行。添加以下内容:
/mnt/swap swap swap defaults 0 0
注:/mnt/swap 路径可以修改,可以根据创建的swap文件具体路径来配置。
5.设置完成后,执行free -m
命令查看效果
root@jiangwei ~]# free -m total used free shared buff/cache available Mem: 991 92 68 6 830 741 Swap: 1023 0 1023
-The End-