技术与生活 / 一篇记录
小服务器分配内存,不能只看现在用了多少
当前占用只是某个时刻的样本,启动、迁移和流量高峰可能需要更多内存。设置上限能约束影响范围,但也可能把原本可用的服务限制到无法完成启动。
先明确这里的区别
小服务器需要控制单个服务占用,避免一个任务拖垮其他服务。
容器名与镜像名仅作示例;操作前先确认目标对象,不直接对不明数据执行清理。
docker stats --no-stream
怎样判断处理正确
结合宿主内存、交换空间和容器限制判断余量。
同时记录峰值、宿主可用内存和交换情况。出现退出时检查是否被 OOM 终止,再判断该减小负载、调整配置还是增加资源。
内存限制与 CPU 限制也不能互相替代。迁移任务可能瞬间占用更多内存,而压缩或构建更可能消耗 CPU。先观察瓶颈,再设置对应资源边界,避免同时随意收紧所有参数。
需要留意的是,限制过低可能导致 OOM,需要在实际负载下验证。
参考:Docker 文档。