Linux交换分区内存优化

swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,而后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,而且把内存上的数据及时的搬运到swap空间里面。linux的基本默认设置为60,具体以下:linux


通常默认值都是60   服务器

[root@timeserver ~]# cat /proc/sys/vm/swappiness
60app

也就是说,你的内存在使用到100-60=40%的时候,就开始出现有交换分区的使用。你们知道,内存的速度会比磁盘快不少,这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,因此咱们在操做系统层面,要尽量使用内存,对该参数进行调整。性能

 

临时调整的方法以下,咱们调成10:
[root@timeserver ~]# sysctl vm.swappiness=10
vm.swappiness = 10
[root@timeserver ~]# cat /proc/sys/vm/swappiness
10
这只是临时调整的方法,重启后会回到默认设置的操作系统

要想永久调整的话,须要将
须要在/etc/sysctl.conf修改,加上:
[root@timeserver ~]# cat /etc/sysctl.confserver

# Controls the maximum number of shared memory segments, in pages
kernel.shmall = 4294967296
vm.swappiness=10内存


激活设置产品

[root@timeserver ~]# sysctl -pio

 

在linux中,能够经过修改swappiness内核参数,下降系统对swap的使用,从而提升系统的性能。方法


遇到的问题是这样的,新版本产品发布后,每小时对内存的使用会有一个尖峰。虽然这个峰值还远没有到达服务器的物理内存,但确发现内存使用达到峰值时系统开始使用swap。在swap的过程当中系统性能会有所降低,表现为较大的服务延迟。对这种状况,能够经过调节swappiness内核参数下降系统对swap的使用,从而避免没必要要的swap对性能形成的影响。


简单地说这个参数定义了系统对swap的使用倾向,默认值为60,值越大表示越倾向于使用swap。能够设为0,这样作并不会禁止对swap的使用,只是最大限度地下降了使用swap的可能性。


经过sysctl -q vm.swappiness能够查看参数的当前设置。


修改参数的方法是修改/etc/sysctl.conf文件,加入vm.swappiness=xxx,并重起系统。这个操做至关因而修改虚拟系统中的/proc/sys/vm/swappiness文件,将值改成XXX数值。

若是不想重启服务器,能够经过sysctl -p动态加载/etc/sysctl.conf文件,但建议这样作以前先清空swap,能够重启应用释放swap空间。

相关文章
相关标签/搜索