美文网首页
docker 内存/cpu限制

docker 内存/cpu限制

作者: 听海吹牛逼的声音 | 来源:发表于2019-03-15 14:33 被阅读0次

    这两天需要在一个docker里面用java起多个thread,每个thread都起一个go的process,go里面又100个goroutine,并且监控着。就比较关心内存使用问题,顺带查了查内存和cpu在docker中的限制方式。
    在我们的监控中有两个内存占用统计。
    RSS resident set size:常驻内存,其实就是里面各个process占据的内存。
    total memory:这个开始不明白为啥会这么大,后来看到有人是说是cache导致的,一般写log或者有缓冲的情况下会导致这种情况。
    在docker里面 cat /sys/fs/cgroup/memory/memory.stat
    这个文件里有所有相关的内存信息,的确是看到cache 和 rss加起来就是总占用。既然是cache的,这个应该不会导致docker的oom。真正的进程占用如果超过了内存限制+swap空间,理论上才会oom。
    之后反复跑几次看能不能让rss很大。

    这个博主两篇文章生动形象。

    cpu限制:

    https://www.cnblogs.com/sparkdev/p/8052522.html
    总结:所谓-cpus=4不是真的cpu使用数量。1代表的是单个cpu的全部时钟,4代表单个cpu的400%的时钟。所以在博主测试中,真正的计算会分到不同cpu上,但是总和是对的。
    对于指定cpu,其实只共享不独占。

    内存限制:

    https://www.cnblogs.com/sparkdev/p/8032330.html
    内存这块比较好懂了,就是里面提到的swap,就是操作系统的内存页的换入换出。https://www.linux.com/news/all-about-linux-swap-space

    相关文章

      网友评论

          本文标题:docker 内存/cpu限制

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