1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Processo Java.exe - Consumo alto

Pessoal, estou com um problema na minha aplicação WEB. O cenário é o seguinte:

Temos um sistema Desktop em Delphi e outro WEB em Java.

Meu sistema WEB utiliza uma DLL do desktop. Quando muitos usuários utilizam essa DLL o processo java.exe fica muito elevado (+ ou - 1Gb de memoria RAM) ocorre um out of memory. No meu servidor temos 8 Gb de RAM.

Podem me ajudar? Verifiquei que todas as conexões estão sendo finalizadas. Coloquei alguns Garbage Collectors, mas mesmo assim não resolveu.

Tem alguma forma de deixar o java.exe trabalhar acima de 1Gb?

  • Segundo o instituto GUJ de pesquisa, 99% dos casos de OutOfMemoryError são erros de programação, ou seja, você tem algum recurso que está consumindo essa memória. Chamar o GC manualmente não ajuda em absolutamente nada. O ideal é utilizar algum profiler como a VisualVM para monitorar o consumo de memória. Além do mais, essa DLL é um suspeito em potencial, uma vez que o GC não atua sobre a memória consumida por bibliotecas nativas.

    Rodolfo Mendes   24 de abr de 2015
  • Verifique o código relacionado a DLL e publique o que achar suspeito, talvez consigamos ajudar melhor.

    Marcus Becker   24 de abr de 2015
  • Olá. Obrigado pela ajuda Rodolfo e Marcus. Com certeza o problema esta nessa chamado e processamento da DLL. Parece que quando chamo essa DLL do Delphi o Java.exe não libera os recursos. O sistema continua funcionando normalmente, apenas se tento chamar novamente a DLL é apresentado out of memory. Vou tentar aprender um pouco mais dessa ferramenta VisualVM e tentar achar a origem do problema. Obrigado pela ajuda, se tiverem mais alguma sugestão eu agradeço. Abraço

    Douglas Gripp Emerick   29 de abr de 2015
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags jvm java ou faça a sua própria pergunta.