在 CentOS(以及大多数 Linux 发行版)里,swapper / swap 通常不是“必须开”,但一般建议保留,取决于你的使用场景。
下面用比较直白的方式说明。
一、什么是 CentOS 里的 swapper / swap
- swapper 通常指内核的 swap 子系统
- swap 是磁盘上的一块空间(分区或文件),用来:
- 内存不够时“临时顶替”内存
- 把不常用的内存页换出,腾出物理内存
二、有没有必要开?看场景
✅ 建议开启 swap 的情况
-
物理内存较小(≤ 4G)
- 很容易内存吃满
- 没 swap 可能直接 OOM(进程被杀)
-
服务器会跑突发内存占用
-
重视系统稳定性
- swap 能避免“直接挂掉”
- 给你排查和应急处理时间
-
云服务器(尤其是小规格)
❌ 可以不开 swap 的情况
-
内存非常大(如 ≥ 16G 且负载稳定)
-
追求极致性能、低延迟
- swap 会带来磁盘 IO
- 对数据库、高频交易不友好
-
明确知道应用内存上限
三、CentOS 常见误区
❌ “开了 swap 会变慢”
- 正常情况下 不会
- 只有真的开始 swap 了才会慢
❌ “有 swap 就说明内存不够”
四、实际建议(CentOS 7 / 8 / Stream)
通用建议
- 2G 内存 → 2–4G swap
- 4–8G 内存 → 2–4G swap
- ≥ 16G 内存 → 可有可无
特殊服务
- 数据库(MySQL / PostgreSQL)
- Kubernetes 节点
- 旧版不推荐
- 新版(1.22+)支持 swap,但需显式开启
五、常用配置命令
查看 swap:
free -h
swapon -s
调整 swap 使用倾向(0–100):
cat /proc/sys/vm/swappiness
sysctl vm.swappiness=10
永久生效:
echo "vm.swappiness=10" >> /etc/sysctl.conf
六、一句话结论
CentOS 的 swapper(swap)不是必须,但“有比没有稳”。
小内存服务器建议开,大内存高性能场景可关或调低。
如果你愿意,可以告诉我:
我可以直接给你具体开不开、开多大的建议。