2010-06-01 37 views
2

請在下面找到有關內存泄漏問題的描述。Weblogic,SUN,Apache和Oracle類中的內存泄漏問題選項

  1. 統計數據顯示燙髮面積(靜態類別)的主要增長。 流量運行了8個小時,2小時後取出堆料堆並在 結束。在彼爾姆地區一個增長確定

  2. 統計從我們上次運行的240MB增長表明在6個小時,每小時40MB 增長2GB堆 - 能保持¾天,堆將是充滿¾ 天 堆轉儲顯示 - 如所提到的在區域生長下面

JMS連接/會話區

阿帕奇

  • org.apache.xml.dtm.DTM []
  • org.apache.xml.dtm.ref.ExpandedNameTable $ ExtendedType
  • org.jdom.AttributeList
  • org.jdom.Content []
  • 組織.jdom.ContentList
  • org.jdom.Element中

SUN

  • ConstantPoolCacheKlass
  • ConstantPoolKlass
  • ConstMethodKlass
  • MethodDataKlass
  • MethodKlass
  • SymbolKlass
  • 字節[]
  • 炭[]
  • com.sun.org.apache.xml.internal.dtm.DTM []
  • com.sun.org.apache.xml.internal.dtm.ref.ExtendedType
  • java.beans.PropertyDescriptor中
  • java.lang.Class中
  • java.lang.Long中
  • java.lang.ref.WeakReference
  • java.lang.ref.SoftReference
  • java.lang.String中
  • java.text.Format子[]
  • java.util.concurrent.ConcurrentHashMap中的$段
  • java.util.LinkedList中的$輸入

的Weblogic

  • com.bea.console.cvo。ConsoleValueObject $的PropertyInfo
  • com.bea.jsptools.tree.TreeNode
  • com.bea.netuix.servlets.controls.content.StrutsContent
  • com.bea.netuix.servlets.controls.layout.FlowLayout
  • com.bea.netuix.servlets.controls.layout.GridLayout
  • com.bea.netuix.servlets.controls.layout.Placeholder
  • com.bea.netuix.servlets.controls.page.Book
  • 融爲一體。 bea.netuix.servlets.controls.window.Window []
  • com.bea.netuix.servlets.controls.window.WindowMode
  • javax.management.modelmbean.ModelMBeanAttributeInfo
  • weblogic.apache.xerces.parsers.SecurityConfiguration
  • weblogic.apache.xerces.util.AugmentationsImpl
  • weblogic.apache.xerces.util.AugmentationsImpl $ SmallContainer
  • weblogic.apache.xerces.util.SymbolTable $入門
  • weblogic.apache.xerces.util.XMLAttributesImpl $屬性
  • weblogic.ap ache.xerces.xni.QName
  • weblogic.apache.xerces.xni.QName []
  • weblogic.ejb.container.cache.CacheKey
  • weblogic.ejb20.manager.SimpleKey
  • weblogic.jdbc。 common.internal.ConnectionEnv
  • weblogic.jdbc.common.internal.StatementCacheKey
  • weblogic.jms.common.Item
  • weblogic.jms.common.JMSID
  • weblogic.jms.frontend.FEConnection
  • weblogic.logging.MessageLogger $ 1
  • weblogic.logging.WLLogRecord
  • weblogic.rjvm.BubblingAbbrever $ BubblingAbbreverEntry
  • weblogic.rjvm.ClassTableEntry
  • weblogic.rjvm.JVMID
  • weblogic.rmi。 cluster.ClusterableRemoteRef
  • weblogic.rmi.internal.CollocatedRemoteRef
  • weblogic.rmi.internal.PhantomRef
  • weblogic.rmi.spi.ServiceContext []
  • weblogic.security.acl.internal.AuthenticatedSubject
  • weblogic.security.acl.internal.AuthenticatedSubject $ SealableSet
  • weblogic.servlet.internal.ServletRuntimeMBeanImpl
  • 的WebLogic .transaction.internal.XidImpl
  • weblogic.utils.collections。ConcurrentHashMap的$輸入

的Oracle XA事務

  • oracle.jdbc.driver.Binder []
  • oracle.jdbc.driver.OracleDatabaseMetaData
  • oracle.jdbc.driver.T4C7Ocommoncall
  • oracle.jdbc.driver.T4C7Oversion
  • oracle.jdbc.driver.T4C8Oall
  • oracle.j dbc.driver.T4C8Oclose
  • oracle.jdbc.driver.T4C8TTIBfile
  • oracle.jdbc.driver.T4C8TTIBlob
  • oracle.jdbc.driver.T4C8TTIClob
  • oracle.jdbc.driver.T4C8TTIdty
  • 預言。 jdbc.driver.T4C8TTILobd
  • oracle.jdbc.driver.T4C8TTIpro
  • oracle.jdbc.driver.T4C8TTIrxh
  • oracle.jdbc.driver.T4C8TTIuds
  • oracle.jdbc.driver.T4CCallableStatement
  • oracle.jdbc.driver.T4CClobAccessor
  • oracle.jdbc.driver.T4CConnection
  • oracle.jdbc.driver.T4CMAREngine
  • oracle.jdbc.driver.T4CNumberAccessor
  • oracle.jdbc.driver.T4CPreparedStatement
  • oracle.jdbc.driver.T4CTTIdcb
  • oracle.jdbc.driver.T4CTTIk2rpc
  • oracle.jdbc.driver.T4CTTIoac
  • oracle.jdbc.driver.T4CTTIoac []
  • oracle.jdbc.driver.T4CTTIoauthenticate
  • oracle.jdbc.driver.T4CTTIokeyval
  • oracle.jdbc.driver.T4CTTIoscid
  • oracle.jdbc.driver .T4CTTIoses
  • oracle.jdbc.driver.T4CTTIOtxen
  • oracle.jdbc.driver.T4CTTIOtxse
  • oracle.jdbc.driver.T4CTTIsto
  • oracle.jdbc.driver.T4CXAConnection
  • oracle.jdbc.driver.T4CXAResource
  • oracle.jdbc.oracore.OracleTypeADT []
  • oracle.jdbc.xa.OracleXAResource $ XidListEntry
  • oracle.net.ano .Ano
  • oracle.net.ns.ClientProfile
  • oracle.net.ns.ClientProfile
  • oracle.net.ns.NetInputStream
  • oracle.net.ns。NetOutputStream
  • oracle.net.ns.SessionAtts
  • oracle.net.nt.ConnOption
  • oracle.net.nt.ConnStrategy
  • oracle.net.resolver.AddrResolution
  • oracle.sql.CharacterSet1Byte

我們使用 - 甲骨文的BEA WebLogic 9.2 MP3 - JDK 1.5.12 - Oracle版本10.2.0.4

對於Oracle,我們找到了一個需要應用的補丁以避免XA事務內存泄漏。但是我們堅持要解決SUN,BEA Weblgogic和Apache漏洞。

請建議...

方面,艾米特J.

+2

打開案例@ BEA支持。 – 2010-06-01 03:33:52

+0

Pascal是對的 - 如果你沒有看到你的應用程序類作爲內存消耗大的話 - 用BEA(Oracle)支持提出這個問題。發送它們(或查看)您的線程轉儲和JVM內存設置。你的應用程序將使用OutOfMemory嗎? – JoseK 2010-06-01 06:23:57

回答

2

這裏是troubleshooting memory leaks孫頁。 3.3節列出了一些確定泄漏發生位置的技術。

任何回答說泄漏可能基於轉儲的位置,你正在運行什麼等可能是純粹的猜測。你最好的選擇是試着跟蹤你自己的泄漏。

+0

是的,我們使用eclipse MAT工具進行了分析。但是使用它只能找出哪個類是內存泄漏嫌疑的對象。例如有內存泄漏的類是com.bea.netuix.servlets.controls.content.StrutsContent,com.bea.netuix.servlets.controls.layout.FlowLayout,com.bea.netuix.servlets.controls。 layout.GridLayout,com.bea.netuix.servlets.controls.layout.Placeholder, 那麼我們怎麼知道這些類文件中內存泄漏的原因是什麼。 – Amit 2010-06-01 05:05:59

+0

@Amit - 您是否嘗試過使用NetBeans Profiler?見3.3.1。 – 2010-06-01 06:16:22

2

要確定您的應用程序不是問題的原因,請將其部署到另一個開放源代碼服務器(jboss等)並重新運行負載測試場景。如果問題依然存在,那麼您需要在應用程序中查看您的實現。

在您的應用程序中,您需要隔離導致泄漏的特定交易及其性質。通常可以看到,一個特定的交易或操作啓動了行爲 - 隔離到該級別 - 有助於關注核心問題。爲此,您可以將跟蹤器添加到涉及xa事務的每個操作中,或者由於創建多個對象而處理大量內存使用。