| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/11/2006 18:23:52
|
kaabah
Java Ninja
![[Avatar]](/images/avatar/aedf8c04c36592dbe313d5938e1cd45e.jpg)
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) |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/11/2006 18:55:31
|
jcatino
Thread.start()
![[Avatar]](/images/avatar/00482b9bed15a272730fcb590ffebddd.jpg)
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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/11/2006 19:05:20
|
kaabah
Java Ninja
![[Avatar]](/images/avatar/aedf8c04c36592dbe313d5938e1cd45e.jpg)
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) |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/11/2006 11:03:28
|
kaabah
Java Ninja
![[Avatar]](/images/avatar/aedf8c04c36592dbe313d5938e1cd45e.jpg)
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) |
|
|
 |
|
|