
序言:经常会遇到 linxu 因为害怕内存不够而开启 swap
但是 swap 开启之后,会一定程度的缓解内存不够用的情况,但是滥用 swap 还是会在更大程度上拖累 linux 服务器的性能。
尤其是开启 swap 服务后会明显发现程序访问卡顿,CPU 占用率上升
使用 top 命令查看时会出现一个 kswapd 的进程占用大量 CPU
# 当然,在 kswapd 出现时,你可以执行下面这个命令释放缓存缓解内存压力 | |
echo 1 > /proc/sys/vm/drop_caches |
如何合理的使用 swap 呢
这里有一个内核参数,可以设置 linux 在内存超过 90% 时才占用 swap
#1、打开内核配置 | |
sudo vi /etc/sysctl.conf | |
#2、配置 swap 使用 | |
vm.swappiness=10 | |
#3、使刚刚的配置生效 | |
sudo sysctl -p | |
#现在就已经配置成功了,各位同学都试试把 |
另外还有一种情况就是 swap 占用率已经很高了,想去对 swap 进行释放
这边提供两种方法
方法一:通过开关 swap 实现 swap 释放
# 关闭 swap | |
swapoff -a | |
#开启 swap | |
swapon -a |
方法二:重启当前主机
# 当然还是尽量建议大家使用方法一 | |
reboot |
正文完