Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

César Lima Piau

Persistência de Dados de Formulário

Recommended Posts

Olá pessoal!

 

Já faz bem um tempo que eu não posto aqui. Até perdi o cadastro.

Me lembrei dos tempos de moleque quando comecei a desenvolver em ASP, PHP, JAVA etc quando eu vivia por aqui.

Pois bem, o que me traz de volta é uma dúvida que apareceu em um sistema cuja arquitetura está sobre minha responsabilidade:

Este sistema está sendo desenvolvido em Java, utilizando o padrão JRS 286 (Portlet 2.0) e será integrado à ferramenta de portal eXo Portal da eXo Platform. O servidor de aplicação é o JBoss.

Este sistema terá um formulário composto de aproximadamente 70 a 90 itens a serem preenchidos e por isso será quebrado em algumas páginas.

Essa páginas precisarão ser armazenadas temporariamente antes do commit final do formulário, que será gravado em definitivo numa base de dados DB2 no Mainframe.

A questão é: Qual a melhor forma ou melhores práticas de persistir esses dados temporários do formulário?

  • Usar sessão
  • Usar banco de dados
  • Usar cookie
  • Existem outras práticas mais modernas?
Serão em torno de 60 mil usuários e estou com medo de utilizar sessão, pois talvez o servidor de aplicação, que estará rodando numa máquina SUN, fique comprometido com o uso excessivo de memória. Além disso, queria garantir a continuidade do preenchimento em caso de queda de sessão.

Usar um banco de dados, consumiria muitas conexões do DB2 mainframe, que como vocês sabem, é um recurso caro.

Usar cookie pode me trazer problemas com relação às configurações de cada cliente (browser, sistema operacional, configurações de segurança etc).

 

O que vocês sugerem?

Como as grandes lojas da internet tem persistido seus carrinhos de compra?

 

Espero que tenha passado todas as informações necessárias e espero ainda mais que vocês me ajudem.

Grande abraço a todos.

 

César Piau

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma idéia seria você utilizar um objeto XML pra armazenar esses dados durante o dia e jogá-los no banco à noite (madrugada).

 

Dá uma olhada neste artigo: http://www.devmedia.com.br/articles/viewco...t.asp?comp=2243

Compartilhar este post


Link para o post
Compartilhar em outros sites

Parece interessante, mas encontrei alguns pontos perigosos:

- Risco de concorrência na atualização dos dados

- Dependência da JDK do Java SE 5.0, uma vez que o sistema será utilizará a JDK do Java EE, e não sei se existe suporte a WebRowSet ou CacheRowSet.

- Pelo que entendi, esse objetos são armazenados em memória virtual no servidor de aplicação ou na estação de trabalho para em aplicações Java SE, o que não garante a continuidade do registro em caso de queda de sessão, além de consumir mais memória devido ao peso da tags XML.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma lida na documentação que pode ser bastante esclarecedora. Acho que grande parte das suas dúvidas, inclusive quanto a concorrência, podem ser sanadas lendo a documentação e fazendo alguns testes. Eu já utilizei antes e recomendo. O negócio é ver se realmente é o melhor para resolveu ou mitigar o seu problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.