docker java 内存分配_docker查看jvm内存占用

一。进入docker容器的宿主机,查看运行指定镜像的容器id(结果的第一列):

docker ps | grep myImageName(或docker ps | grep java)

二。进入容器内部:

docker exec -it containerId sh

三。直接输入top命令:

top

3d4f127915c59f6bd03f707d0b15d2bf.png

可看到基本的容器占用的信息:pid、vsz、cpu、command等。(ctrl+c 或 q,退出top)

四。查看更具体的jvm内存占用:

top  -m

87468d1c2f62c048c8f075e892be59b3.png

其中,vsz:Virtual Memory Size,虚拟内存大小,表明了该进程可以访问的所有内存,包括被交换的内存和共享库内存。

rss: Resident Set Size,常驻内存集合大小,表示进程在RAM中占用了多少内存,并不包含在SWAP中占用的虚拟内存。即使是在内存中的使用了共享库的内存大小也一并计算在内,包含了完整的在stack和heap中的内存。

SHR:shared memory,共享内存。

补充:

ps  -ef  | grep java 或 docker top 容器id ,可查看pid的一些信息。

ps aux | grep java。

top  -p pid。

RSS 是常驻内存集(Resident Set Size),表示该进程分配的内存大小。

RSS 不包括进入交换分区的内存。

RSS 包括共享库占用的内存(只要共享库在内存中)

RSS 包括所有分配的栈内存和堆内存。

VSZ 表示进程分配的虚拟内存。

VSZ 包括进程可以访问的所有内存,包括进入交换分区的内容,以及共享库占用的内存。

VSZRW:未百度到具体含义,猜测:初始申请的虚拟内存大小。

docker stats 容器名  或  docker stats 容器id,结果如下:

CONTAINER           CPU %               MEM USAGE / LIMIT         MEM %               NET I/O      BLOCK I/O       PIDS

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值