通过开启swap分区解决小内存阿里云服务器的运行瓶颈
阿里云在2018年春节前后通过一系列的促销活动向新老顾客推广云服务器,在诱人的价格面前笔者贡献了口袋里最后的可支配人民币,但实际使用下来,发现1核2G内存的ECS服务器的性能实在有限,特别是最近在上面部署docker容器的时候明显感觉到内存吃紧。思来想去,发现可以通过开启swap分区来解决内存瓶颈。
swap分区大小设置
阿里云的linux云服务器默认是没有启用swap分区(交换分区)的。一般情况下swapswap分区的大小可以参考以下规则进行设定:
内存大小 | swap大小 |
---|---|
MEM_SIZE <= 4G | 最小2G |
4G < MEM_SIZE <= 16G | 最小4G |
16G < MEM_SIZE <= 64G | 最小8G |
64G < MEM_SIZE <= 256G | 最小16G |
启用swap分区
创建用于交换分区的文件
bash
dd if=/dev/zero of=/mnt/swap bs=block_size count=number_of_block
1
其中block_size
和number_of_block
的大小可以自定义,例如bs=1M count=2048
代表2G大小的swap分区。
设置交换分区文件
bash
mkswap /mnt/swap
1
立即启用交换分区文件
bash
swapon /mnt/swap
1
设置开机自动启用swap分区
在/etc/fstab
中增加swap配置行。
/mnt/swap swap swap defaults 0 0
1
查看效果
设置完成之后可以通过linux的free -m
命令查看swap分区的状态。
评论区留言准则:
1. 本评论区禁止传播封建迷信、吸烟酗酒、低俗色情、赌博诈骗等任何违法违规内容。
2. 当他人以不正当方式诱导打赏、私下交易,请谨慎判断,以防人身财产损失。
3. 请勿轻信各类招聘征婚、代练代抽、私下交易、购买礼包码、游戏币等广告信息,谨防网络诈骗。