V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
bobopu
V2EX  ›  Linux

linux 服务器内存消耗完开始使用 swap 时,性能会下降多少?

  •  
  •   bobopu · 2014-05-31 21:59:45 +08:00 · 8121 次点击
    这是一个创建于 3836 天前的主题,其中的信息可能已经有所发展或是发生改变。
    例如2G内存全部占用完之后开始启用swap了,这时整个系统的性能会下降多少,在高并发的情况下出出现什么问题?在硬盘使用传统HDD未采用SSD的情况下。
    13 条回复    2015-02-08 15:31:10 +08:00
    Sunyanzi
        1
    Sunyanzi  
       2014-05-31 22:15:38 +08:00
    具体性能会下降多少没有精确量化过 ... 而且这事情也不好去量化 ...

    偶尔吃到 SWAP 不是什么问题 ... 但在高并发的情况下吃 SWAP 会引发雪崩效应 ...

    在系统压力不下降的情况下 ... 性能会随时间增长以几何级数下降 ... 直到拖死整个系统为止 ...

    但如果因为系统性能下降而导致压力同时下降 ... 这时系统就会进入一个苟延残喘的动态平衡 ...

    表现不会很好 ... 但也不至于完全死掉 ...

    SWAP 还是有存在的意义的 ... 就像我之前也有说过 ...

    意外发生之后 ... 你看到一个重病人和看到一个死人是完全不同的状况 ...
    bobopu
        2
    bobopu  
    OP
       2014-05-31 22:29:45 +08:00
    @Sunyanzi 原来是这样,那如果是SSD的硬盘或者SSD磁盘阵列的情况下,吃SWAP的情况会不会有明显改善?
    Sunyanzi
        3
    Sunyanzi  
       2014-05-31 22:56:41 +08:00
    吃 SWAP 的情况不会因为你用怎样的硬盘而改善 ... 只是吃到之后的性能会有变化罢了 ...

    SSD 的情况我不熟不好乱说 ... 我自己测试过把 SWAP 放在 15k5 HDD 组的 Raid 0 上 ...

    测试结果 ... 负载同样压力的时候比用单块硬盘撑的时间长了一些 ... 最后结局还是一样的 ...

    以及我总觉得你的这个出发点不太对 ... 换更好的硬盘不是为了提供更好的 SWAP 性能啊喂 ...

    不管怎么说一个健康的系统是不应该占用 SWAP 的 ...

    如果你发现 SWAP 被长时间占用 ... 停机加条内存吧 ... 成本比换硬盘来的低多了 ...
    bobopu
        4
    bobopu  
    OP
       2014-05-31 23:11:00 +08:00
    @Sunyanzi 非常感谢深入浅出的解答。哈,是因为有家IDC的磁盘系统说是很强悍,SSD阵列的,所以会有能否靠swap撑的不切实想法。。
    skybr
        5
    skybr  
       2014-05-31 23:14:45 +08:00   ❤️ 2
    服务器调整下swappiness, 尽量保证内存充裕的情况下不会用到swap.

    我是觉得如果追求性能, 那服务器开swap只是为了防猝死,一旦用到, 就意味该优化的优化, 该加内存的加内存.
    Sunyanzi
        6
    Sunyanzi  
       2014-05-31 23:35:45 +08:00   ❤️ 1
    @bobopu 这个想法也不是不切实际啦 ... 具体情况具体分析 ...

    如果对系统的响应时间没有要求 ... 单纯是活着即可 ... 用 SWAP 硬撑也是可以的 ...

    只是相同大小的 SWAP 和内存 ... 前者会比后者慢不少 ... 极限承压会也比后者小很多罢了 ...
    bobopu
        7
    bobopu  
    OP
       2014-06-01 00:02:18 +08:00
    @Sunyanzi 唉,只怪云计算厂家的内存翻倍价格之往上窜,实在是。。
    liwei
        8
    liwei  
       2014-06-01 07:16:01 +08:00 via Android
    可以试试zswap或者zram。
    bobopu
        9
    bobopu  
    OP
       2014-06-01 08:52:06 +08:00 via Android
    @liwei 这貌似是一项比较新的技术,需要较新的内核支持,centos6.3能否支持?
    thinkxen
        10
    thinkxen  
       2014-06-01 13:36:46 +08:00 via Android
    ssd对swap不会有什么改善,该死还是死。。。
    9hills
        11
    9hills  
       2014-06-01 20:01:46 +08:00 via iPhone
    我厂的机器都是关闭swap的,仅供参考
    bobopu
        12
    bobopu  
    OP
       2014-06-02 00:40:12 +08:00 via Android
    @9hills
    @thinkxen 原来如此。。
    mongodb
        13
    mongodb  
       2015-02-08 15:31:10 +08:00
    @9hills 不怕oom么。还是策略上考虑的swap一旦用上了也等于不能正常提供服务算是废了,宁可给oom别的处理方式也不想一直挂在那?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2712 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 09:16 · PVG 17:16 · LAX 01:16 · JFK 04:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.