美文网首页
阿里云 Cannot allocate memory

阿里云 Cannot allocate memory

作者: 简单coder | 来源:发表于2019-02-14 15:44 被阅读5次

    原贴防挂记录此文章

    渣渣线上服务器mvn package等等的时候经常Cannot allocate memory,其实是够的,但是

    阿里云服务器默认没有开启虚拟内存,经常遇到软件内存不足,运行崩溃的情况。

    为了减少购买昂贵的内存资源,可以暂时使用虚拟内存代替(根据运行的程序需求,性能会降低一些)。

    这个技术在云服务器上使用,可以省很多银子的哦!!!

    1、查看内存使用情况

    free -m
    
    root@supermap:/swap# free -m
                 total       used       free     shared    buffers     cached
    Mem:           488        480          8          0          1        337
    -/+ buffers/cache:        141        346
    Swap:         0          0       0
    

    虚拟内存空间竟然为0,实在是没有想到!!!

    2、创建虚拟内存磁盘卷

    大概count=2024288,2G左右,可以视磁盘大小和需求创建。

    默认存放在/swap/swapadd,可以是自己的任何目录。阿里云服务器默认没有swap,需要自己mkdir /swap创建。

    dd if=/dev/zero of=/swap/swapadd bs=1024 count=2024288
    3、将磁盘卷转为虚拟内存卷
    mkswap /swap/swapadd
    4、启用虚拟内存服务
    swapon /swap/swapadd
    5、再来查看内存使用情况

    root@supermap:/swap# free -m
                 total       used       free     shared    buffers     cached
    Mem:           488        480          8          0          1        337
    -/+ buffers/cache:        141        346
    Swap:         1976          0       1976
    

    多出来2G左右的swap空间。

    6、关闭虚拟内存服务

    swapoff -v /swap/swapadd
    

    7、移动虚拟内存空间
    如果当前的虚存所在的磁盘空间不够,可以首先关闭虚存服务,将其移动到别的磁盘,再启用即可。

    swapoff -v /swap/swapadd
    mv /swap/swapadd /mnt/swap
    swapon /swap/swapadd
    

    嗯,这个技术在云服务器上使用,可以省很多银子的哦!!!

    相关文章

      网友评论

          本文标题:阿里云 Cannot allocate memory

          本文链接:https://www.haomeiwen.com/subject/qzveeqtx.html