O que vem a ser mais custoso

5 respostas
leosouzabh

Persistir um registro em banco, ou enviar uma mensagem JMS para um outro host ?

5 Respostas

T

Depende, já que message queues costumam ser implementadas com bancos de dados. Depende muito da máquina usada para persistir os dados da message queue ou então que tem o servidor de banco de dados.

fantomas

Depende…rsrsrsrsr

Tem servidores de mensagens que permitem vc "apontar um banco de dados para registrar as mensagens para manter a integridade.
Caso o servidor seja desligado abruptamente ele tem como recuperar as mensagens desatualizadas e restaurar a situação na qual estava antes quando for ligado novamente.

É claro que isto tem custo: espaço e performance.

flws

danieldestro

No seu caso só os testes vão dizer.

leosouzabh

hum
Entendi, mas no meu caso, a importância na performance da aplicação que enviará a mensagem e mais importante, nao precisaria me preocupar com o armazenamento da Queue.
Acho que vou mais pro lado da mensagem mesmo.
mais de qualquer forma farei os testes primeiro.

T

No seu caso, usar uma Message Queue deve ser mais rápido para a aplicação, já que ela não precisa esperar que a mensagem seja persistida no banco (se a fila não for transacional).
Se você tentar gravar a mensagem no banco diretamente, sem usar um servidor de message queue, você terá de esperar o banco efetivar a transação, o que pode ser um pouco mais lento (depende é claro do seu teste).

Criado 18 de março de 2009
Ultima resposta 18 de mar. de 2009
Respostas 5
Participantes 4