Escolha entre Grade de Eventos do Azure, Hubs de Eventos e Barramento de Serviço

Azure fornece vários serviços para fornecer eventos e mensagens em uma solução. Cada serviço tem como destino cenários diferentes, desde o roteamento de eventos reativos até o streaming de alta taxa de transferência até o sistema de mensagens transacionais de nível empresarial.

Este artigo compara os seguintes serviços:

Escolher um serviço candidato

Esta seção ajuda você a escolher os serviços mais adequados para suas necessidades.

Use a tabela a seguir para restringir rapidamente qual serviço se ajusta ao seu cenário:

Critério Grade de Eventos Hubs de Eventos Barramento de Serviço
Finalidade primária Roteamento de eventos reativos Streaming e ingestão de Big Data Mensagens transacionais empresariais
Modelo de dados Eventos (notificações discretas) Fluxos de eventos (série ordenada pelo tempo) Mensagens (conteúdos de alto valor)
Garantia de entrega Pelo menos uma vez Pelo menos uma vez Pelo menos uma vez (ordenado opcionalmente, exatamente uma vez com sessões)
Quando usar Reagir a alterações de status, arquiteturas sem servidor Telemetria, streaming de dados distribuídos, análise em tempo real Processamento de pedidos, transações financeiras, fluxos de trabalho

O resultado desta seção é um ponto de partida para consideração. Use as seções a seguir para executar uma avaliação detalhada dos serviços.

Eventos versus mensagens nos serviços de mensagens do Azure

Há uma distinção importante entre Azure serviços que fornecem um evento e serviços que entregam uma mensagem.

Evento: uma notificação leve de uma alteração de estado ou condição. O editor não tem nenhuma expectativa sobre como o evento é tratado. Os eventos podem ser discretos (relatando uma alteração de estado que é acionável) ou parte de uma série ordenada por tempo (relatando uma condição que é analisável). Eventos discretos são ideais para soluções sem servidor que precisam ser dimensionadas.

Mensagem: Dados brutos produzidos por um serviço a serem consumidos ou armazenados em outro lugar. A mensagem contém os dados que acionaram o pipeline de mensagem. Existe um contrato entre o publicador e o consumidor. Por exemplo, o publicador envia uma mensagem com dados brutos e espera que o consumidor crie um arquivo com base nos dados e envie uma resposta quando o trabalho for concluído.

Escalabilidade e taxa de transferência

A tabela a seguir compara como Grade de Eventos do Azure, Hubs de Eventos do Azure e Barramento de Serviço do Azure lidar com a escalabilidade e a taxa de transferência.

Critério Grade de Eventos Hubs de Eventos Barramento de Serviço
Throughput Escalonável dinamicamente, sem servidor Milhões de eventos por segundo Entrega assíncrona confiável
Modelo de latência Entrega de eventos quase em tempo real Streaming de baixa latência Agenciado com sondagem longa opcional
Modelo de dimensionamento Automático (sem servidor) Unidades de throughput / unidades de processamento Unidades de Mensageria (Premium)

Recursos de mensagens

A tabela a seguir compara os recursos de mensagens de Grade de Eventos do Azure, Hubs de Eventos do Azure e Barramento de Serviço do Azure.

Critério Grade de Eventos Hubs de Eventos Barramento de Serviço
Protocolo MQTT, HTTP AMQP, Kafka, HTTP AMQP, HTTP
Pub/Sub Sim (publicação/assinatura) Sim (grupos de consumidores) Sim (tópicos e assinaturas)
Pedido Nenhuma garantia Por partição FIFO (sessões)
Transações No No Sim
Detecção de duplicidade No No Sim
Mensagens mortas Sim No Sim
Envio em lote Sim Sim (lotes de eventos) Sim (sessões)
Captura/reprodução No Sim (Captura de Hubs de Eventos) No

Integração e implantação

A tabela a seguir compara as opções de integração e implantação para Grade de Eventos do Azure, Hubs de Eventos do Azure e Barramento de Serviço do Azure.

Critério Grade de Eventos Hubs de Eventos Barramento de Serviço
integração de serviço Azure Integração profunda com serviços Azure e serviços de terceiros Serviços de análise e infraestrutura de processamento de fluxo Aplicativos empresariais, nuvem híbrida, conectividade local
Edições Grade de Eventos do Azure (PaaS), Grade de Eventos do Azure no Kubernetes com o Azure Arc Standard, Premium, Dedicado Básico, Standard e Premium

Use o Event Grid, os Event Hubs e o Barramento de Serviço juntos

Em alguns casos, você usa os serviços lado a lado para cumprir funções distintas. Por exemplo, um site de comércio eletrônico pode usar o Barramento de Serviço para processar pedidos, o Event Hubs para capturar a telemetria do site e o Event Grid para responder a eventos como um item é enviado.

Em outros casos, você os vincula para formar um pipeline de eventos e dados. Você usa a Grade de Eventos para responder a eventos nos outros serviços. Para obter um exemplo de como usar a Grade de Eventos com Hubs de Eventos para migrar dados para o Azure Synapse Analytics, consulte Stream Big Data para o Azure Synapse Analytics. A imagem a seguir mostra o fluxo de trabalho para transmitir os dados.

Diagrama mostrando como Hubs de Eventos, Barramento de Serviço e Grade de Eventos podem ser conectados juntos.