MSMQ v Tabela de banco de dados

Um processo existente altera o campo de status de um registro de reserva em uma tabela, em resposta à entrada do usuário.

Eu tenho outro processo para escrever, que será executado de forma assíncrona para registros com um status específico. Ele lerá o registro da tabela, executará algumas operações (incluindo chamadas para serviços da web de terceiros) e atualizará o campo de status do registro para indicar que o processamento foi concluído (ou In Error, com uma contagem de erros).

Esta operação parece muito semelhante a uma fila. Quais são os benefícios e vantagens do uso do MSMQ sobre uma tabela SQL nessa situação e por que devo escolher um sobre o outro?

É o nosso software que está adicionando e atualizando registros na tabela.

É uma nova peça de trabalho (um Serviço do Windows) que executará o processamento assíncrono. Isso precisa estar "sempre ativo".

questionAnswers(11)

yourAnswerToTheQuestion