码迷,mamicode.com
首页 > 其他好文 > 详细

是否调整swap大小依据

时间:2015-06-26 16:26:17      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

现象:
信息中心机房一台Linux服务器运行缓慢,系统服务出现间歇性停止响应,发现此服务器的物理内存是16G,
而最初装机的时候,系统管理人员却只分配了2G的虚拟内存。查看内存的使用状况,物理内存并没有完全耗尽,
但虚拟内存已经耗尽,整个系统CPU负载和磁盘IO都非常高。

问题:
是由于交换分区不足导致,那么解决方法就是:将虚拟内存通过虚拟文件的方式增加到8G,系统运行状况明显好转。

其实虚拟内存并不是等到物理内存用尽了才使用的,是否尽量的使用或不使用swap,在内核空间有一个参数控制。

[root@server ~]# cat /proc/sys/vm/swappiness

  60

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

Linux系统设置多大的交换分区合适呢?为此,引用红帽官方文库里的一段文字进行浅析说明。

目前Red Hat(红帽官方)推荐交换分区的大小应当与系统物理内存的大小保持线性比例关系。
不过在小于2GB物理内存的系统中,交换分区大小应该设置为内存大小的两倍,如果内存大小多于2GB,交换分区大小应该是物理内存大小加上2GB。
其原因在于,系统中的物理内存越大, 对于内存的负荷可能也越大。

一般来说可以按照如下规则设置swap大小:

4G以内的物理内存,SWAP 设置为内存的2倍。

4-8G的物理内存,SWAP 等于内存大小。

8-64G 的物理内存,SWAP 设置为8G。

64-256G物理内存,SWAP 设置为16G。

物理内存      交换分区

小于等于4G    至少2G

4~16G        至少4G

16~64G        至少8G

64~256G        至少16G

是否调整swap大小依据

标签:

原文地址:http://my.oschina.net/u/1433006/blog/471258

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!