Entity Manager Factory. Singleton or not to Singleton?

2 respostas
rollei

Pessoal estou com uma duvida, estou fazendo uma aplicacao web e estava querendo uma opnião de voces aqui do forum.

Eu queria saber o que voces acham melhor:
- Abrir e fechar o EntityManagerFactory toda vez que for fazer uma operacao
- Abrir o EntityManagerFactory somente quando o usuario se logar no sistema

No primeiro caso, acredito eu que o uso de memoria deva ser menor, mas jah no segundo, o programa vai responder bem mais rapido. Ja fiz testes aqui, mas somente com um usuario. Com o singleton o desempenho da aplicao melhorou MUITO

eu queria saber: com um numero maior de usuarios esse uso de memoria vai ser muito grande? vale a pena fazer o singleton? A e uma duvida? Onde eu vou fechar a factory? eu tinha pensado em fechar quando o usuario clicar no botao de logout do sistema, mas a sessao pode expirar tambem

[]'s

2 Respostas

carlos_chea

desculpa reabrir o tópico…

mas como vc resolveu o seu problema???

vc usa o close para fecha uma EntityManagerFactory? (estou utilizando o close mais a EMF continua aberta, só fecha a EM)

C

A factory como o proprio nome diz é para criar entity managers, logo, é o ideal trabalhar como singleton neste caso, quanto aos entity managers, normalmente eu utilizo um para cada usuário, pois cada usuario tem seu ocntexto, porém acredito eu que em outros casos compartilhamento de EM possa ser indicado

Criado 15 de outubro de 2008
Ultima resposta 2 de jul. de 2012
Respostas 2
Participantes 3