【问题标题】:How to inspect the java memory except heap and perm gen如何检查除 heap 和 perm gen 之外的 java 内存
【发布时间】:2017-07-10 03:35:50
【问题描述】:

我使用选项运行 jmxtrans:-Xms16m -Xmx16m -XX:MaxPermSize=32m,但是从操作系统的角度来看,该进程占用了大约 190m 内存,我使用 jstat 新、旧和 perm 的使用量在我的最大内存设置下,那么哪些对象占用了额外的内存?超过150m

ps辅助输出:

ps aux | grep jmxtrans
root        187  0.4  0.0 5987252 196492 ?      Sl   Jul07  17:15 
/usr/java/jdk7/bin/java -server -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Xms16m -Xmx16m -XX:MaxPermSize=32m -Djmxtrans.log.level=info -Djmxtrans.log.dir=. -Dhost=5e7d319eaae7 -DjmxPort=59100 -DserviceName=maxwell -DserviceVersion=v1.0 -jar lib/jmxtrans-all.jar -e -f /jmxtrans/jmxtrans.json -s 60 -c false

jstat 输出:

# jstat -gc 187 1 1
S0C    S1C    S0U    S1U      EC       EU        OC         OU       PC     PU    YGC     YGCT    FGC    FGCT     GCT   
512.0  512.0  288.0   0.0    4096.0   1043.8   11264.0     5822.7   26112.0 25959.7   2644   26.102  67     24.894   50.996

【问题讨论】:

    标签: java jmxtrans


    【解决方案1】:

    非堆内存和其他东西,这是很正常的jvm堆内存与res内存不匹配。见JVM Memory Structure

    【讨论】:

      猜你喜欢
      • 2013-05-15
      • 1970-01-01
      • 1970-01-01
      • 2013-03-10
      • 2011-10-07
      • 2021-04-21
      • 2016-09-10
      • 1970-01-01
      • 2019-02-01
      相关资源
      最近更新 更多