Websphere6.1、Solaris 10、JDK 1.5.0_13上のJava Webアプリケーションです。最大ヒープサイズは1024mに設定しました。 jmapは、ヒープ状態が正常であることを示します。ヒープメモリの使用量はわずか57%です。 OutOfMemoryはまったくありません。-Xmx1024mを使用したJavaプロセスは、3GB常駐メモリをどのように占有できますか?
しかし、このJavaプロセスではpsから非常に高いRSS(3GB)が見つかりました。 pmapは1.9Gのプライベートメモリのブロックを示します。
3785: /dmwdkpmmkg/was/610/java/bin/java -server -Dwas.status.socket=65370 -X Address Kbytes RSS Anon Locked Pgsz Mode Mapped File ... 0020A000 2008 2008 2008 - 8K rwx-- [ heap ] 00400000 1957888 1957888 1957888 - 4M rwx-- [ heap ] 8D076000 40 40 40 - 8K rw--R [ stack tid=10786 ] ...
ネイティブコードではCヒープメモリリークですか?根本的な原因を見つけるにはどのようなアプローチが推奨されていますか?
これらは参考になります。 -memorycheckはIBM JDKでのみ使用可能なようですが? SolarisにはIBM JDKはなく、SUN JDKだけです。 – gengmao
わかりませんが、私はSolarisでの経験はありませんが、おそらくそうではありません...おそらく、IBM JDKはWebsphereと一緒にIBMから来ているようです。それが私の考えです。 – MicSim