JMS - Retirando uma mensagem por vez.  XML
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Autor Mensagem
ronildobraga
JavaEvangelist

Membro desde: 29/03/2006 10:06:51
Mensagens: 443
Localização: sao paulo - sp
Offline

Boa noite

Implementei um Message Driven Bean(MDB) para uma fila JMS usando Glassfish e estou com o seguinte problema: Supomos que a fila contenha 100 mensagens para serem processadas pois chegou tudo de uma vez, o resultado disso é que eu terei 100 MDB sendo executando simultaneamente.

Isso ocorre porque o MDB tem um tempo muito longo de processamento, e o resultado seria melhor se só retirasse a mensagem da fila para ser processada assim que terminar de processar a anterior, mesmo porque eu preciso que o banco de dados seja atualizado antes de processar a próxima mensagem.

Alguém sabe se isso é possível ?
Desde já muito obrigado.

Ronildo da Rocha Braga Jr.
Programador, nada mais.

blog: http://www.iprogramming.blogspot.com/
[Email] [WWW] [MSN]
edu53
Thread.start()
[Avatar]

Membro desde: 31/03/2006 14:47:21
Mensagens: 30
Localização: São Paulo
Offline

ronildobraga wrote:Boa noite

Implementei um Message Driven Bean(MDB) para uma fila JMS usando Glassfish e estou com o seguinte problema: Supomos que a fila contenha 100 mensagens para serem processadas pois chegou tudo de uma vez, o resultado disso é que eu terei 100 MDB sendo executando simultaneamente.

Isso ocorre porque o MDB tem um tempo muito longo de processamento, e o resultado seria melhor se só retirasse a mensagem da fila para ser processada assim que terminar de processar a anterior, mesmo porque eu preciso que o banco de dados seja atualizado antes de processar a próxima mensagem.

Alguém sabe se isso é possível ?
Desde já muito obrigado.



Bom dia, so e possivel fazer isso que vc quer deixano 1 mdb para ler a fila
[Email] [MSN]
Tchello
GUJ Master
[Avatar]

Membro desde: 07/06/2008 14:41:04
Mensagens: 1693
Offline

edu53 wrote:
ronildobraga wrote:Boa noite

Implementei um Message Driven Bean(MDB) para uma fila JMS usando Glassfish e estou com o seguinte problema: Supomos que a fila contenha 100 mensagens para serem processadas pois chegou tudo de uma vez, o resultado disso é que eu terei 100 MDB sendo executando simultaneamente.

Isso ocorre porque o MDB tem um tempo muito longo de processamento, e o resultado seria melhor se só retirasse a mensagem da fila para ser processada assim que terminar de processar a anterior, mesmo porque eu preciso que o banco de dados seja atualizado antes de processar a próxima mensagem.

Alguém sabe se isso é possível ?
Desde já muito obrigado.



Bom dia, so e possivel fazer isso que vc quer deixano 1 mdb para ler a fila

Pelo que entendi o sistema dele já está assim.
O que ele quis dizer é que se há 100 msgs na fila o servidor de aplicações dele criará, digamos ai, 100 instâncias desse MDB e os executará em paralelo.
É isso?
ronildobraga
JavaEvangelist

Membro desde: 29/03/2006 10:06:51
Mensagens: 443
Localização: sao paulo - sp
Offline

Tchello wrote:
edu53 wrote:
ronildobraga wrote:Boa noite

Implementei um Message Driven Bean(MDB) para uma fila JMS usando Glassfish e estou com o seguinte problema: Supomos que a fila contenha 100 mensagens para serem processadas pois chegou tudo de uma vez, o resultado disso é que eu terei 100 MDB sendo executando simultaneamente.

Isso ocorre porque o MDB tem um tempo muito longo de processamento, e o resultado seria melhor se só retirasse a mensagem da fila para ser processada assim que terminar de processar a anterior, mesmo porque eu preciso que o banco de dados seja atualizado antes de processar a próxima mensagem.

Alguém sabe se isso é possível ?
Desde já muito obrigado.



Bom dia, so e possivel fazer isso que vc quer deixano 1 mdb para ler a fila

Pelo que entendi o sistema dele já está assim.
O que ele quis dizer é que se há 100 msgs na fila o servidor de aplicações dele criará, digamos ai, 100 instâncias desse MDB e os executará em paralelo.
É isso?


Sim é isso mesmo, é ai onde esta o problema.
Conhece alguma solução ?

Ronildo da Rocha Braga Jr.
Programador, nada mais.

blog: http://www.iprogramming.blogspot.com/
[Email] [WWW] [MSN]
Tchello
GUJ Master
[Avatar]

Membro desde: 07/06/2008 14:41:04
Mensagens: 1693
Offline

Opa, não sei não =Z
Mas fiz uma pesquisa com as tags "single+instance+mdb" e obtive uns resultados interessantes:

http://community.jboss.org/message/149385#149385

http://forums.sun.com/thread.jspa?threadID=5213061

Espero que isso lhe seja útil.
Abraços.
ronildobraga
JavaEvangelist

Membro desde: 29/03/2006 10:06:51
Mensagens: 443
Localização: sao paulo - sp
Offline

Opa é sim... obrigado.

This message was edited 1 time. Last update was at 25/02/2010 10:38:24


Ronildo da Rocha Braga Jr.
Programador, nada mais.

blog: http://www.iprogramming.blogspot.com/
[Email] [WWW] [MSN]
Tchello
GUJ Master
[Avatar]

Membro desde: 07/06/2008 14:41:04
Mensagens: 1693
Offline

Opa, se conseguir resolver posta ai pra gente saber como.

Abraços.
 
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Ir para:   
Powered by JForum 2.1.8 © JForum Team