O DESAFIO
Um novo sistema web de monitoramento de execução de serviços nos ativos da empresa, recém-colocado em produção, apresentou consumo excessivo de memória. A arquitetura da aplicação apresentava elevada complexidade devido à integração com o PABX da empresa, servidor de cache dedicado e sistema de push de eventos para os browsers conectados. O crescimento ilimitado da memória causava recycle no pool de aplicações do IIS (Internet Information Services) fazendo com que todos os usuários clientes perdessem a conexão com o servidor e consequentemente interrompendo os atendimentos e consultas com os fornecedores de serviço.
A SOLUÇÃO
Com a utilização de ferramentas de análise dos arquivos de Dump (Despejo) do servidor o time de analistas da DTI identificou um vazamento de memória na comunicação entre a aplicação web e o servidor de cache dedicado – AppFabric. Uma vez encontrado o ponto ofensor, foi realizada a refatoração do código das classes de interface com o servidor de cache garantindo a segurança na execução desta comunicação.
A ABORDAGEM ÁGIL DTI
A equipe de analistas da DTI, contando com a colaboração da equipe de TI do cliente, elaborou uma abordagem de ataque ao problema seguindo passos bem estruturados e levantando eficientemente todos os possíveis pontos causadores do vazamento de memória. Utilizando conhecimentos nas mais avançadas ferramentas de depuração de memória para ambiente .NET, identificamos e isolamos o problema para entender exatamente o comportamento da aplicação conseguindo, inclusive, replicar o comportamento em um ambiente de testes.
O RESULTADO
Após o reparo da causa raiz do vazamento de memória, foi realizada uma nova publicação da aplicação e o acompanhamento posterior mostrou que o consumo de memória havia estabilizado. Além disso, durante a análise do código, foram encontrados outros potenciais problemas no código que também foram corrigidos fazendo com que está intervenção fosse amplamente benéfica para o sistema do cliente.
Em outra oportunidade, a equipe da DTI realizou a análise de um vazamento de memória em ambiente Java-NetWeaver-Oracle de um sistema de integração de dados de produção industriais – MES – sendo também bem sucedida nesta tarefa.
Palavras chave, conceitos e tecnologias: AppFabric, Memory Leak, IIS, Vazamento de Memória, .NET, análise de Dump, memória gerenciada, memoria não-gerenciada
Visite nosso site: www.dtisistemas.com.br
Contato: marcelo.szuster@dtisistemas.com.br
Tel.: (31) 2514-0901

Nenhum comentário:
Postar um comentário