Swap分区,即交换区,系统在物理内存不够时,与Swap进行交换。 其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。
一、交换分区的大小分配推荐法则
内存小于4GB时,推荐不少于2GB的swap空间;
内存4GB~16GB,推荐不少于4GB的swap空间;
内存16GB~64GB,推荐不少于8GB的swap空间;
内存64GB~256GB,推荐不少于16GB的swap空间;
二、创建Swap文件
dd if=/dev/zero of=/root/swap bs=1M count=2048
三、构建swap分区
mkswap /root/swap
四、修改内核参数权重
vim /etc/sysctl.conf
将vm.swappiness参数改为70
1 # System default settings live in /usr/lib/sysctl.d/00-system.conf. 2 # To override those settings, enter new settings here, or in an /etc/sysctl.d/<name>.conf file 3 # 4 # For more information, see sysctl.conf(5) and sysctl.d(5). 5 6 7 vm.swappiness = 70 8 net.ipv4.neigh.default.gc_stale_time=120 9 net.ipv4.conf.all.rp_filter=0 10 net.ipv4.conf.default.rp_filter=0 11 net.ipv4.conf.default.arp_announce = 2 12 net.ipv4.conf.all.arp_announce=2 13 net.ipv4.tcp_max_tw_buckets = 5000 14 net.ipv4.tcp_syncookies = 1 15 net.ipv4.tcp_max_syn_backlog = 1024 16 net.ipv4.tcp_synack_retries = 2 17 net.ipv6.conf.all.disable_ipv6 = 1 18 net.ipv6.conf.default.disable_ipv6 = 1 19 net.ipv6.conf.lo.disable_ipv6 = 1 20 net.ipv4.conf.lo.arp_announce=2
五、启用Swap分区
vim /etc/fstab
插入如下代码
/root/swap swap swap defaults 0 0
六、最终效果
top
free -m