Lentidão em aplicativo...  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
kaabah
Java Ninja
[Avatar]

Membro desde: 23/05/2006 09:56:33
Mensagens: 260
Localização: Vitória-ES
Offline

Olá juggers...

Estou trabalhando com um sistema para emissão de relatórios de um data warehouse. A ferramenta é em java.

Estamos com um problema. A ferramenta possui um server rodando no tomcat. Todos os relatórios que fazemos em nosso cliente são salvos e processados no server.

Ao usarmos o client (que também é java) temos uma dificuldade muito grande em termos de velocidade de processamento de ABERTURA, SALVAMENTO e EXECUÇÃO dos relatórios. Foi constatado também, que durante o processamento (execução) de um relatório já pronto (rodando no browser) o CPU do servidor vai a 100% de uso.

Já eliminamos algumas possíveis causas. E agora surgiu uma hipótese de ser consumo de memória da JVM.

Alguém acha que isso é possível? Se sim, como aumentar a memória para execução desse aplicativo?

Alguma outra idéia também do que possa ser?

-----
Sun Certified Java Programmer

"O que eu espero senhores, é que depois de um razoável período de discussão, todo mundo concorde comigo". (Winston Churchill)
jcatino
Thread.start()
[Avatar]

Membro desde: 18/08/2005 17:41:10
Mensagens: 45
Localização: São Paulo
Offline

kaabah wrote:Olá juggers...


Boas !

kaabah wrote:
Estou trabalhando com um sistema para emissão de relatórios de um data warehouse. A ferramenta é em java.

Estamos com um problema. A ferramenta possui um server rodando no tomcat. Todos os relatórios que fazemos em nosso cliente são salvos e processados no server.

Ao usarmos o client (que também é java) temos uma dificuldade muito grande em termos de velocidade de processamento de ABERTURA, SALVAMENTO e EXECUÇÃO dos relatórios. Foi constatado também, que durante o processamento (execução) de um relatório já pronto (rodando no browser) o CPU do servidor vai a 100% de uso.


CPU no server e não o client com o browser, certo ?

Os relatórios estão em PDF ? Por que precisa haver um cliente java ? Não grava de forma que o brwser possa abrir diretamente ? Acho que não entendi a infraestrutura, ou imagino que não deveria haver um client (imagino que um applet no browser se comunicando com o server, sei lá por quê...)


Já eliminamos algumas possíveis causas. E agora surgiu uma hipótese de ser consumo de memória da JVM.

Alguém acha que isso é possível? Se sim, como aumentar a memória para execução desse aplicativo?

Alguma outra idéia também do que possa ser?

Para ter certeza de ser a VM, vc precisa monitorar o servidor; aí vai depender se está no Linux, num outro Unix, ou num Windows 2000 Server ou similar.

Tenta mudar a linha de comando que levanta o Tomcat para usar o 'java -Xrunhprof' (mais informações: 'java -Xrunhprof:help'), de forma a verificar quais classes e o quê está consumindo CPU.

Por exemplo, no servidor em linux vc dá 'top' na linha de comando, como root, e verifica se a JVM do Tomcat é quem está consumindo.

--
J Catino
kaabah
Java Ninja
[Avatar]

Membro desde: 23/05/2006 09:56:33
Mensagens: 260
Localização: Vitória-ES
Offline

Vou tentar explicar a arquitetura.

Esse client é um developer... ele que faz acesso aos server que contem o arquivo de configuração dos meus relatórios. Os relatórios são editados nesse meu client. Quando eu abro os relatorios para fazer alteracoes de campos que vão aparecer e outros tipos de coisas é que ele fica lento. Depois que altera e salva, mesma coisa!

O servidor é Windows 2003. Outro detalhe, o processo que consumia os 100% da CPU era exatamente o Tomcat.

Ficou mais claro?

-----
Sun Certified Java Programmer

"O que eu espero senhores, é que depois de um razoável período de discussão, todo mundo concorde comigo". (Winston Churchill)
kaabah
Java Ninja
[Avatar]

Membro desde: 23/05/2006 09:56:33
Mensagens: 260
Localização: Vitória-ES
Offline

Alguma dica mais?

-----
Sun Certified Java Programmer

"O que eu espero senhores, é que depois de um razoável período de discussão, todo mundo concorde comigo". (Winston Churchill)
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team