Usando Azure Storage Queues

Desenvolver para o Azure Storage

Shahzad Mian

Content Developer, DataCamp

Introdução às storage queues

  • Storage queues são um serviço de filas de mensagens.
  • Aplicativos costumam lidar com muitos pedidos ao mesmo tempo.
  • Esperar cada processo terminar pode deixar o sistema lento.
  • Azure Storage Queues permitem comunicação assíncrona entre componentes.
  • Mensagens assíncronas mantêm velocidade e escala.

Resolvendo o problema com storage queues

Desenvolver para o Azure Storage

O desafio do mundo real

Problema e solução para acúmulo de pedidos

  • A loja online da Cipher Coffee recebe centenas de pedidos de uma vez.
  • Sem filas, cada pedido teria que esperar os outros.
  • Filas permitem aceitar pedidos na hora e processar depois.
  • Isso mantém o site rápido e os clientes satisfeitos.
Desenvolver para o Azure Storage

O que é uma fila?

  • Uma fila é uma “espera” para processar mensagens.
  • Mensagens são processadas em ordem: first in, first out.
  • Cada mensagem representa uma pequena unidade de trabalho.
  • Ao concluir, a mensagem é removida da fila.

Gráfico de fila

Desenvolver para o Azure Storage

Como funcionam as Azure Storage Queues

Fila explicada

  • Azure Storage Queues fazem parte da sua Storage account.
  • Mensagens podem ter até 64 KB e são armazenadas com durabilidade.
  • Apps podem:
    • Enviar mensagens para a fila.
    • Receber e processar mensagens.
    • Excluir mensagens após concluir.
  • Mensagens persistem mesmo se o sistema reiniciar.
Desenvolver para o Azure Storage

O fluxo assíncrono

 

 

Fluxo assíncrono

  • O remetente adiciona uma mensagem, como "Processar pagamento do Order 2045"
  • Um serviço em segundo plano, como uma Azure Function, busca a mensagem.
  • Após o processamento com sucesso, a mensagem é excluída.
  • Esse padrão mantém os sistemas escaláveis e responsivos sob carga.
Desenvolver para o Azure Storage

Cipher Coffee em ação

  • O site da Cipher Coffee envia um pedido para a fila.
  • O sistema de fulfillment lê a mensagem da fila.
  • A mensagem aciona atualizações no banco e no pagamento.
  • Baristas são notificados sem travar o checkout.

Processo de pedido

Desenvolver para o Azure Storage

Benefícios das filas

  • Desacoplamento: Sistemas operam de forma independente.
  • Escalabilidade: Adicione workers para processar mais rápido.
  • Confiabilidade: Mensagens persistem até em quedas.
  • Integração: Funciona com Azure Functions e Logic Apps.

Sistema independente

Sistema escalável

Sistema confiável

Screenshot 2025-10-27 at 5.42.20 pm.png

Desenvolver para o Azure Storage

Ciclo de vida da mensagem

Screenshot 2025-10-27 at 5.48.34 pm.png

  • Mensagens passam por três etapas:
    • Enqueue: Mensagem é adicionada à fila.
    • Dequeue: Um worker busca a mensagem para processar.
    • Delete: Mensagem é removida após sucesso.
  • Falhas reaparecem automaticamente para nova tentativa.
Desenvolver para o Azure Storage

Casos de uso comuns

  • Processamento de pedidos e cobrança em segundo plano.

Ícone de pedido

  • Envio de e-mails de notificação.

Ícone de e-mail

  • Buffer de telemetria IoT.

Ícone de IoT

  • Coleta de logs e pipelines de eventos.
    • Use filas para operações independentes e com retry seguro.
    • E muito mais
Desenvolver para o Azure Storage

Queues vs Service Bus

  • O Azure Service Bus é usado para cenários avançados de mensagens.
  • O Service Bus oferece:
    • Ordenação e sessões.
    • Transações e tópicos/assinaturas.
  • As Azure Storage Queues são mais simples e baratas para cargas leves.
  • A Cipher Coffee usa filas para pedidos e atualizações em tempo real.

Screenshot 2025-10-27 at 6.13.37 pm.png

Desenvolver para o Azure Storage

Vamos praticar!

Desenvolver para o Azure Storage

Preparing Video For Download...