MDB x SessioBean

3 respostas
M

Estou fazendo um programa de exemplo, para uma biblioteca virtual, para todas as operações de persistencia, estou usando SessionBeans/Hibernate, até agora tudo bem, a minha duvida é a seguinte, digamos por exemplo que, esta biblioteca venha a ter uma grande movimentação de dados, o que seria melhor eu usar para por exemplo reservar um livro para determinado usuario, devo usar Message Beans ou continuar usando Session Beans? Antes que alguem fale que estou usando um canhão para matar passarinho, quero dizer que este sistema é somente para aprendizado, já li bastante a respeito de Message Beans, e fiquei em duvida quando, mando uma message JMS para ser consumido pelo MDB, dizendo que o livro foi retirado pelo usuário X, e o usuario Y for fazer uma consulta(SessionBean) pelo mesmo livro, e a message, ainda não foi consumida pelo meu MDB, o usuário Y receberia a informação dizendo que o livro ainda não foi retirado, quando na verdade o livro já foi.

3 Respostas

mcampelo

Eu uso MDB quando preciso fazer 2 processos Java (distribuídos) se comunicarem e quero trabalhar com procedimentos assíncronos.

É o seu caso?

[]'s
Marco Campêlo

M

Marco, a idéia é a seguinte, digamos que por exemplo eu tenha uma grande quantidade de consultas por livros em um determinado momento, e então um usuário qualquer queira retirar um livro, o que eu tenho em mente seria, enviar o pedido de retirada do livro para um MDB, que no momento certo cosumirira essa mensagem e faria a retirada do livro. O que eu tenho em mente é que trabalhando com JMS de forma assíncrona, isto me permitiria por exemplo, deixar meu servlet livre para um proximo pedido, e não esperando o termino de um Session Bean para depois retornar para o usuario, eu acho que pela “sobrecarga” do servidor iria demorar um pouco, o que seria reslvido com o uso do MDB. Como já falei estou começando agora com a tecnologia, não sei se essa seria a melhor maneira, obrigado

mcampelo

Não estou muito certo que essa seria uma boa utilização para um MDB, pois a retirada de um livro é um processo síncrono, não? O usuário não vai ficar esperando uma resposta?

Eu faria simplesmente com Session Beans (será que você realmente precisa de EJBs?)

[]´s
Marco Campêlo

Criado 2 de junho de 2005
Ultima resposta 4 de jun. de 2005
Respostas 3
Participantes 2