云服务器添加并挂载虚拟内存

时间:2024-03-09 22:20:13
一般在各个云产商购买的云服务器都是不会给我们添加虚拟内存。
例如通过阿里云安装的系统,不会自动给我们分配swap虚拟内存空间;Swap分区或虚拟内存文件,是在系统物理内存不够用的时候,由系统内存管理程序将那些很长时间没有操作内存数据,临时保存到Swap分区虚拟内存文件中,以提高可用内存额度的一种机制。当那些程序要再次重新运行时,会再从Swap分区或虚拟内存文件中恢复之前保存的数据到内存中。

在升级服务器配置前,就先给系统加上一块1GB大小的虚拟内存,防止Linux大开杀戒。

cd /var/

dd if=/dev/zero of=swapfile bs=1024 count=1048576 #创建大小为1G的文件swapfile

#count的计算公式: count=SIZE*1024  (size以MB为单位)

mkswap swapfile #格式化虚拟内存文件

swapon swapfile #激活虚拟内存文件

再编辑自动挂载文件,让系统开机的时候自动加载虚拟内存文件

vi /etc/fstab

添加如下代码

/var/swapfile swap swap defaults 0 0


PS:相关操作会导致额外的IO开销,特别是,如果内存使用率已经非常高,而同时IO性能也不是很好的情况下,该机制其实会起到相反的效果:不仅系统性能提升较小(因为内存使用率已经非常高了),而且由于频繁的内存到SWAP的切换操作,会导致产生大量额外的IO操作,导致IO性能进一步降低,最终反而降低了系统总体性能。