Glauco,

   Para evitar estes problemas de concorr�ncia voc� pode fazer o seguinte:

   - No m�todo que busca dados do banco, ao inv�s de retornar um ResultSet,
carregue os dados retornados em um ArrayList.
   - Defina o m�todo como synchonized, e tenha certeza de que todas as
threads de sua aplica��o chamam uma mesma inst�ncia desta classe
(singleton). Assim, n�o ser� poss�vel algu�m fazer um select enquanto outra
pessoa ali estiver.

:~

Abra�os,

   Luiz Reginaldo

----- Original Message -----
From: "Glauco Cesar de Castro" <[EMAIL PROTECTED]>
To: "Java List" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Sent: Wednesday, August 28, 2002 6:23 PM
Subject: [java-list] Concorrencia


> Ola para todos na lista.
>
> Estou com um problema serio aqui. Tenho uma aplicacao desenvolvida em
> JSP, que acessa varias classes em Java (negocio) que acessa outras
> classes de persistencia e que vai ate o banco.
> Quando acesso o sistema com um usuario, ele entra e sai sem problemas,
> executando todos os passos. Mas se faco um teste de stress, com cinco
> usuarios por exemplo, esta ocorrendo um erro de concorrencia de acesso.
> Ainda nao consegui determinar aonde esta o erro, mas fazendo alguns
> debugs com o velho out.println() consegui ver o seguinte:
>
> em determinada classe eu tenho um select e faco um loop nesse select.
> Acontece que no meio do loop, outro usuario faz a mesma requisicao e por
> algum motivo, ele executa antes da primeira chamada, fechando o cursor.
> Quando o primeiro que chamou vai tentar fechar o cursor, ele fala que ja
> foi fechado. Nao sei se eh realmente esse o problema, estou chutando,
> mas acho que isso esta fazendo com que o sistema se perca, nao
> conseguindo dar retorno e ocorrendo time out no aplicativo de stress.
>
> Outro detalhe. Monitorando o banco, eu constatei que alguns cursores
> estao ficando abertos. Se executo o sistema com apenas um usuario,
> direitinho, ele abre e fecha tudo. Mas se existe usuarios concorrentes,
> os cursores permanecem abertos.
>
> Por acaso alguem ja passou por algo parecido? Como eh que o java trata
> esse tipo de coisa?
>
> OBS: Ja constatei que o problema nao e o "web server", pois ja tentei
> com o tomcat, jrun, tomcat com IIS, Resin, HTTP Server da oracle e todos
> dao o mesmo problema.
>
> Obrigado por qualquer ajuda,
> Glauco
>
>
> ------------------------------ LISTA SOUJAVA ----------------------------
> http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
> d�vidas mais comuns: http://www.soujava.org.br/faq.htm
> regras da lista: http://www.soujava.org.br/regras.htm
> historico: http://www.mail-archive.com/java-list%40soujava.org.br
> para sair da lista: envie email para [EMAIL PROTECTED]
> -------------------------------------------------------------------------

_______________________________________________________________________
Yahoo! PageBuilder
O super editor para cria��o de sites: � gr�tis, f�cil e r�pido.
http://br.geocities.yahoo.com/v/pb.html

------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a