Postagens

Mostrando postagens de abril, 2009

COM+ e problemas de memória

Onde trabalho possuímos uma infra que serve de façade para a chamada de componentes dos sistemas de forma remota. Esta forma remota pode ser desde estações de usuário para servidores de componentes, servidores web para servidores de componentes e mesmo entre servidores de componentes. Ela é um pacote COM+, e chama componentes que estão também hospedados no COM+ (temos muito legado aqui, vai demorar para sair dessa tecnologia). Recentemente deparamos com um problema de alto consumo de memória do nosso processo dllhost. Pedimos um dump deste processo (windbg), e ao analisar, encontrei muitas entradas de System.OutOfMemoryException. Ao verificar a causa dessas exceptions, encontrei a seguinte mensagem: Retrieving the COM class factory for component with CLSID {6DEDD69A-065F-4781-90A7-35E0E0DEB4BA} failed due to the following error: 8007000e. O componente que está se querendo instanciar é um DTO nosso, e não está sendo possível pelo erro de falta de memória. Encontrei um KB que fala sobre