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".