Entrega push com HTTP

Este artigo se baseia no artigo O que é a Grade de Eventos do Azure? para fornecer informações básicas antes de você começar a usar a entrega pull e push da Grade de Eventos via HTTP. Ele aborda os conceitos fundamentais, os modelos de recursos e os modos de entrega de mensagens com suporte. No final deste documento, você encontrará links úteis para artigos que orientam você sobre como usar a Grade de Eventos e artigos que oferecem informações conceituais detalhadas.

Importante

Este documento ajuda você a começar a usar as funcionalidades da Grade de Eventos que usam o protocolo HTTP. Este artigo é adequado para usuários que precisam integrar aplicativos na nuvem. Caso você precise comunicar os dados do dispositivo IoT, confira Visão geral do suporte a MQTT na Grade de Eventos do Azure.

Conceitos fundamentais

CloudEvents

A Grade de Eventos está em conformidade com a especificação CloudEvents 1.0 padrão aberta da CNCF por meio da associação de protocolo HTTP ao formato JSON. Isso significa que as suas soluções publicam e consomem mensagens de evento usando um formato como o seguinte exemplo:

{
    "specversion" : "1.0",
    "type" : "com.yourcompany.order.created",
    "source" : "https://yourcompany.com/orders/",
    "subject" : "O-28964",
    "id" : "A234-1234-1234",
    "time" : "2018-04-05T17:31:00Z",
    "comexampleextension1" : "value",
    "comexampleothervalue" : 5,
    "datacontenttype" : "application/json",
    "data" : {
       "orderId" : "O-28964",
       "URL" : "https://com.yourcompany/orders/O-28964"
    }
}

O que é um evento?

Um evento é a menor quantidade de informações que descreve por completo algo que aconteceu em um sistema. Muitas vezes, nós nos referimos a um evento, conforme mostrado acima, como um evento discreto, porque ele representa um fato distinto e independente sobre um sistema que fornece um insight que pode ser acionável. Entre os exemplos estão: com.yourcompany.Orders.OrderCreated, org.yourorg.GeneralLedger.AccountChanged, io.solutionname.Auth.MaximumNumberOfUserLoginAttemptsReached.

Observação

Usamos intercambiavelmente os termos eventos discretos, eventos de nuvem ou apenas eventos para nos referirmos às mensagens que informam sobre uma alteração de um estado do sistema.

Para obter mais informações sobre eventos, consulte a Terminologia da Grade de Eventos.

Outro tipo de evento

A comunidade de usuários também se refere a eventos como os tipos de mensagens que carregam um ponto de dados, como uma leitura individual de um dispositivo ou um só clique em uma página de aplicativo Web. Esse tipo de evento costuma ser analisado em uma janela de tempo ou em um tamanho do fluxo de eventos para obtenção de insights e execução de uma ação. Na documentação da Grade de Eventos, nós nos referimos a esse tipo de evento como ponto de dados, dados de streaming ou telemetria. Eles são um tipo de dados que o suporte a MQTT da Grade de Eventos e os Hubs de Eventos do Azure geralmente processam.

Tópicos e assinaturas de evento

Os eventos publicados na Grade de Eventos chegam em um tópico, que é um recurso que contém logicamente todos os eventos. Uma assinatura de evento é um recurso de configuração associado a um só tópico. Entre outras coisas, você usa uma assinatura de evento para definir critérios de seleção de eventos a fim de definir a coleção de eventos disponível para um assinante do conjunto total de eventos presentes em um tópico.

Diagram showing a topic and associated event subscriptions.

Entrega push

Há suporte para a entrega push nos recursos a seguir. Clique nos links para saber mais sobre cada um deles.

  • Tópicos do sistema. Use tópicos do sistema para receber eventos (do sistema) dos serviços do Azure.
  • Tópicos personalizados. Use tópicos personalizados quando quiser publicar os eventos do aplicativo.
  • Domínios. Os domínios representam um grupo de tópicos de domínio normalmente associados a um aplicativo individual que exige o envio de eventos para diferentes grupos de usuários, organizações ou aplicativos. Uma abordagem comum é associar um tópico de domínio a um grupo de aplicativos de destino ou a usuários de uma organização no mesmo locatário. Uma organização pode ser uma equipe, uma divisão na empresa, uma empresa etc.
  • Tópicos de parceiros. Use tópicos de parceiros quando desejar consumir eventos de parceiros de terceiros.

Configure uma assinatura de evento em um tópico do sistema, personalizado ou de parceiro para especificar um critério de filtragem para os eventos e definir um destino para um dos manipuladores de eventos com suporte.

O diagrama a seguir ilustra os recursos que dão suporte à entrega push com alguns dos manipuladores de eventos com suporte.

High-level diagram showing all the topic types that support push delivery, namely System, Custom, Domain, and Partner topics.

Observação

Se você estiver interessado em saber mais sobre a entrega por push em namespaces da Grade de Eventos, consulte [namespace-push-delivery-overview.md].

Próximas etapas

Os artigos a seguir fornecem informações sobre como usar a Grade de Eventos ou fornecem informações adicionais sobre os conceitos.