专栏首页魏艾斯博客www.vpsss.net云服务器创建、启用 SWAP 分区详细教程

云服务器创建、启用 SWAP 分区详细教程

最近查看云服务器的 CPU 记录,在后半夜的时候总有一段时间飙升到 80%~100%,想来那个时间是各种蜘蛛来访的时段,也就造成了服务器负载飙升的现象。刚好看到了明月登陆博客发了一篇云服务器开启 SWAP 分区的教程,就拿来试试,看看效果如何。

检查了一下默认云服务器没有启用 SWAP 分区。

我这里创建 1G 的 SWAP 分区。

打开 XSHELL 连接到 VPS,输入一下命令:

dd if=/dev/zero of=/mnt/swapfile bs=1MB count=1024

把刚才创建的文件做成 swap 文件

mkswap /mnt/swapfile

开启 swap

swapon /mnt/swapfile

查看状态

swapon -s

查看内存状态

free -m

=========以下操作能确保 swap 更安全,且重启后有效===========

查看 vim /etc/rc.local 如果有 swapoff -a 修改为 swapon -a,我这里是没有这个的。

vim /etc/rc.local

设置自动挂载

vim /etc/fstab

把下面命令添加到最下面的空行。

/mnt/swapfile swap swap defaults 0 0

权限设置

chown root:root /mnt/swapfile

chmod 0600 /mnt/swapfile

查看 swappiness 值。

cat /proc/sys/vm/swappiness

如果为 0 ,则将其改为 10

·sysctl vm.swappiness=10

永久设置 swappiness,如果该文件里没有,则追加 vm.swappiness = 10

vim /etc/sysctl.conf

重启,那些永久设置项就生效了。

PS:swappiness=0 的时候表示最大限度使用物理内存,然后才是 swap 空间,swappiness=100 的时候表示积极的使用 swap 分区,并且把内存上的数据及时的搬运到 swap 空间里面。

从下面截图可以看到,可用内存只剩下 20M 了,完毕后重启了一下 lnmp,过程中确实比较缓慢(买之后就没重启过 lnmp,大概有 7 个多月了),等待时间长了一点。

如何关闭 swap 分区?

1. swapoff /data/swap 2. swapoff -a >/dev/null

理论上说很多人都信奉 Linux 服务器不启用 SWAP 的策略,也就是把所有资源都放到内存里面运行,大家都知道内存运行程序比硬盘要快上几百倍了。但是现在天天服务器都被各路蜘蛛一顿撸,估计也会卡出翔。重要的还是 SWAP 设定的合理性和 SWAP 使用频率调整度。

物理内存还够用的情况下,swap 空间上存储的是系统不会频繁使用的数据,调用的次数非常少,性能问题几乎可以忽略。

如果物理内存不够用了呢?系统会把物理内存放不下的数据放进 swap 里,因为它不得不这样做,这样一来就会造成系统频繁的操作 swap 数据。

SWAP 不能代替物理内存使用;SWAP 在小内存主机上必不可少。

2G 和 2G 以下内存的服务器,最好使用 SWAP 分区,设置成和物理内存相同容量 SWAP,2G 以上的,设置为 2G。

以上内容参考了明月登楼的博文 https://lnmp.ymanz.com/lnmp/240.html,魏艾斯博客这里是测试一下,看看添加完 SWAP 分区之后,观察几天系统资源占用和 CDN 命中率是否有一定程度提升,等有结果了再来报告结果。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 腾讯云新注册领取价值 2775 元代金券 每种限量 500 张 先到先得

    腾讯云推出了新注册用户可无门槛领取价值 2775 元腾讯云代金券的活动,每种代金券限量 500 张,先到先得。

    魏艾斯博客www.vpsss.net
  • 腾讯云服务器内存型M1实例 满足内存密集型大业务部署

    内存型 M1 是 CPU 内存比在 1:8 左右的机型,满足高性能数据库、分布式内存缓存等需要大量的内存操作、查找和计算的应用。这种实例比较大的特点是内存超大,...

    魏艾斯博客www.vpsss.net
  • 腾讯云网站解决方案专享特惠 一站式上云 热门云产品低至 3 折

    最近推出的腾讯云网站解决方案专享特惠,一站式上云,热门云产品低至 3 折。这套方案主要是为初创客户提供一站式云端解决方案,快速低成本部署业务,利用云产品配置灵活...

    魏艾斯博客www.vpsss.net
  • 手动优化WDCP提高速度减少负载负载

    小编发现很多同学在使用阿里云服务器搭建PHP网站的时候会用到WDCP面板,用WDCP面板大家最为关注的就是WDCP所占用的内存,很多童鞋说目前最新版本的WDCP...

    用户1191760
  • 程序员需要了解的硬核知识之内存

    我们都知道,计算机是处理数据的设备,而数据的主要存储位置就是磁盘和内存,并且对于程序员来讲,CPU 和内存是我们必须了解的两个物理结构,它是你通向高阶程序员很重...

    cxuan
  • swap分区介绍

    swap分区也就是交换分区,当物理内存不够用的时候,会将内存中一些暂时不用的数据存放到swap分区中,会加大系统io,同时造的成大量页的换进换出,影响系统的性能...

    dogfei
  • spark提交任务,参数的形式是JSON

    spark提交任务,参数的形式是JSON 比如:spark2-submit --class com.iflytek.test.Jcseg_HiveDemo  s...

    用户1171305
  • 【机器学习】今日头条与大数据的初夜:机器学习和个性化发展

    大家想象一下,如果我们是一个高中生,这时候我问大家,大数据是什么?大数据就是你的初夜,大家谁的初夜是在高中时代发生的?大家请举一下手,接下来我会说四个原因,为什...

    陆勤_数据人网
  • katalon中REST URL占位参数动态化

    REST URL中占位参数很常见,但是在测试中就会带来一些麻烦,比如ab中URL是死的,不能变化的,而在katalon中则可以很轻松的处理这个问题。

    尚浩宇
  • 「深度」车企挂名背后,百度通过Apollo拿到自动驾驶数据恐非易事

    镁客网

扫码关注云+社区

领取腾讯云代金券