docker stats取得的数据和 使用进程方式查看的容器的内存占用不一致的问题


服务器环境
使用docker 跑的 java服务
使用docker stats 查看内存使用如图
[root@localhost ~]# docker stats

CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
23c9d35e282b 0.02% 682.2 MiB / 7.702 GiB 8.65% 13.69 MB / 18.86 MB 119.1 MB / 6.353 MB 194
显示使用 682m

通过查找该java进程 ,然后通过top -p id查看
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

14395 root 20 0 1999780 586872 20100 S 0.0 7.3 0:55.48 java

查看是586m ,这个是误差比较少的情况
有的时候误差很大的情况下相差解决一倍 也就是docker stats占用显示是 RES的 一倍

想问问到底那个是真实的,之间的差值又来源于什么
已邀请:

要回复问题请先登录注册