当前位置 主页 > 服务器问题 > win服务器问题汇总 >

    关于VPS内存不足的一些说明和解决办法

    栏目:win服务器问题汇总 时间:2019-10-08 16:50

    一、关于swap的几点说明
    1,swap一般称作为“交换空间”,其作用相当于Windows上的“虚拟内存”。
    2,swap实际上是硬盘上的一块空间。
    3,swap内保存的数据并不能直接供CPU直接使用。CPU如果想用swap内的数据,需要先把数据从硬盘转移到内存,然后再交给CPU。
    4,swap内保存的是暂时不使用的或者使用频率很低的数据。
    5,数据从swap到内存的速度比从内存到cpu的速度,要慢几百倍甚至上千倍。

    二、关于内存不足
    1,swap存在的意义在于存放不经常使用的数据,而不是物理内存放不下的数据。
    2,如果经常使用的数据在物理内存中存放不下,内核会被迫将部分数据分配到swap。
    3,如果第2条所写的发生了,接下来会产生大量的硬盘读写IO,原因参见〖关于swap的几点说明〗中的第2条。
    4,接上条,大量的硬盘读写IO会产生的后果为:
    (1)CPU在处理运算时会有大量的时间在等待硬盘IO,严重影响服务器的响应速度。
    (2)同服务器上的其他VPS都会受到影响(除非使用的不是同一硬盘)。
    5,*请注意区分“使用swap”和“进行swap”:
    (1)使用swap,是指数据存放在swap中,是固定的状态,不会占用硬盘IO。
    如下图,系统虽然占用了13M的swap,但是没有进行swap交换。

    (2)进行swap,是指把数据从swap转移到物理内存,或者从物理内存转移到swap的操作,是执行的过程。
    如下图,系统几乎每秒都在进行大量内存交换操作。

    三、对于内存不足的建议
    (1)如果内存不足,应该及时升级VPS内存。否则不光会影响到自己的VPS系统,而且会影响到其他的VPS。
    (2)不要尝试通过增加swap来解决内存不足的问题,问题根源是由于物理内存不足,再多的swap也是于事无补的。