以下内容表示对WebSphere 6中的OutOfMemoryException之后的主堆转储文件中的大量内存的传入引用:
Class Name | Shallow Heap | Retained Heap ------------------------------------------------------------------------------------------------------------- | | java.util.HashMap$Entry[1048576] @ 0xbd42d00 | 4,194,320 | 122,167,192 '- java.util.HashMap @ 0x1044918 | 48 | 122,167,240 '- class com.ibm.ejs.j2c.ConnectorRuntime @ 0x15871128 | 28 | 122,167,356 |- org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader @ 0x133fa48 | 96 | 191,140 |- class com.ibm.ejs.j2c.RALifeCycleManagerImpl @ 0x15834ea0 | 28 | 108 |- class com.ibm.ejs.j2c.ConnectorRuntime @ 0x15871128 | 28 | 122,167,356 |- class com.ibm.ejs.j2c.PoolManager @ 0x158723d8 | 28 | 2,028 |- class com.ibm.ejs.j2c.RAWrapperImpl @ 0x15875eb0 | 28 | 1,612 |- class com.ibm.ejs.j2c.XMLReader @ 0x15e6ef88 | 28 | 156 |- class com.ibm.ejs.j2c.ConnectionFactoryRefBuilderImpl @ 0x15ed5468 | 28 | 140 |- class com.ibm.ejs.j2c.ConnectionFactoryDetailsImpl @ 0x15efc758 | 28 | 201,060 |- class com.ibm.ejs.j2c.ResourceAdapterDDImpl @ 0x1605ce60 | 28 | 220 |- class com.ibm.ejs.j2c.ConnectorPoolProperties @ 0x1605d900 | 28 | 972 |- class com.ibm.ejs.j2c.ConnectionManager @ 0x163eea78 | 28 | 196 |- class com.ibm.ejs.j2c.XATransactionWrapper @ 0x163f0a30 | 28 | 28 |- class com.ibm.ejs.j2c.ConnectionFactoryBuilderServerImpl @ 0x16431540| 28 | 364 |- class com.ibm.ejs.j2c.DefaultSecurityHelper @ 0x16434800 | 28 | 28 |- class com.ibm.ejs.j2c.MCWrapper @ 0x165542a0 | 28 | 764 |- class com.ibm.ejs.j2c.PoolManager$GetJ2CProperties @ 0x16577758 | 28 | 28 |- class com.ibm.ejs.j2c.SharedPool @ 0x16578100 | 28 | 28 |- class com.ibm.ejs.j2c.FreePool @ 0x165787f0 | 28 | 28 |- class com.ibm.ejs.j2c.CMConfigDataImpl$GetJ2CProperties @ 0x16977b30 | 28 | 28 '- Total: 19 entries | | -------------------------------------------------------------------------------------------------------------
我没有通过他们所有,但哈希图条目似乎都有空值。
这可能是什么原因? 我如何获得更多信息?
解决scheme是: Increased max heap size for server from 256 to 768MB. Also enabled garbage collection logging. Increased max heap size for server from 256 to 768MB. Also enabled garbage collection logging.
如果您使用的是Oracle,那么问题可能出在Oracle连接池内存消耗上。
请参阅本白皮书 ,特别是有关设置oracle.jdbc.implicitStatementCacheSize参数的部分。