Escolha uma solução de fila de mensagens
As filas de armazenamento e filas do Barramento de Serviço têm um conjunto de recursos ligeiramente diferente. É possível escolher um deles ou ambos, de acordo com as necessidades de sua solução específica.
Ao determinar qual tecnologia de enfileiramento se ajusta ao propósito de uma determinada solução, os arquitetos e desenvolvedores de soluções deverão considerar essas recomendações.
Considere usar filas do Barramento de Serviço
Como arquiteto/desenvolvedor de soluções, você deve considerar o uso das filas do Service Bus quando:
- Sua solução precisa receber mensagens sem a necessidade de sondar a fila. Com o Barramento de Serviço, você pode obtê-lo usando uma operação de recebimento de sondagem longa usando os protocolos baseados em TCP aos quais o Barramento de Serviço dá suporte.
- Sua solução requer que a fila forneça uma entrega garantida ordenada por primeiro a entrar, primeiro a sair (FIFO).
- Sua solução precisar dar suporte à detecção automática de duplicatas.
- Você deseja que seu aplicativo processe mensagens como fluxos paralelos de execução prolongada (mensagens são associadas a um fluxo usando a propriedade ID de sessão na mensagem). Nesse modelo, cada nó no aplicativo de consumo compete por fluxos, em vez de mensagens. Quando um fluxo é fornecido a um nó consumidor, o nó pode examinar o estado do fluxo de aplicação usando transações.
- Sua solução requer comportamento transacional e atomicidade ao enviar ou receber várias mensagens de uma fila.
- Seu aplicativo manipula mensagens que podem exceder 64 KB, mas provavelmente não se aproximarão do limite de 256 KB ou 1 MB, dependendo da camada de serviço escolhida (embora as filas do Barramento de Serviço possam lidar com mensagens de até 100 MB).
- Você lida com um requisito para fornecer um modelo de acesso baseado em função para as filas e direitos/permissões diferentes para remetentes e receptores.
Considere usar filas de armazenamento
Como arquiteto/desenvolvedor de soluções, você deve considerar o uso das filas do Armazenamento quando:
- Seu aplicativo precisar armazenar mais de 80 GB de mensagens em uma fila.
- Seu aplicativo desejar acompanhar o progresso do processamento de uma mensagem na fila. Isso é útil se o trabalho que está processando uma mensagem falhar. Outro trabalhador poderá usar essas informações para prosseguir de onde o trabalhador anterior parou.
- Você precisa de logs do lado do servidor de todas as transações executadas nas suas filas.