Partilhar via


Hub IoT e confiabilidade

do Hub IoT do Azure é um serviço gerenciado hospedado na nuvem que atua como um hub de mensagens central para comunicação entre um aplicativo IoT e seus dispositivos conectados. Você pode conectar milhões de dispositivos e suas soluções de back-end de forma confiável e segura. Quase qualquer dispositivo pode ser conectado a um Hub IoT.

O Hub IoT oferece suporte ao monitoramento para ajudá-lo a rastrear a criação de dispositivos, conexões de dispositivos e falhas de dispositivos.

O Hub IoT também suporta os seguintes padrões de mensagens:

  • Telemetria de dispositivo para nuvem
  • Upload de arquivos de dispositivos
  • Métodos de solicitação-resposta para controlar seus dispositivos a partir da nuvem

Para obter mais informações sobre o Hub IoT, consulte Conceitos de IoT e o Hub IoT do Azure.

Para entender como o Hub IoT oferece suporte a uma carga de trabalho confiável, consulte os seguintes tópicos:

As seções a seguir são específicas para o Hub IoT do Azure e confiabilidade:

  • Considerações de design
  • Lista de verificação de configuração
  • Opções de configuração recomendadas

Considerações de design

Para obter mais informações sobre o Contrato de Nível de Serviço do Hub IoT do Azure, consulte SLA para o Hub IoT do Azure.

Lista de verificação

Você configurou o Hub IoT do Azure pensando na confiabilidade?

  • Provisione um segundo Hub IoT em outra região e tenha lógica de roteamento no dispositivo.
  • Use o protocolo AMQP ou MQTT ao enviar eventos com frequência.
  • Use apenas certificados validados por uma autoridade de certificação raiz no ambiente de produção se estiver usando certificados X.509 para a conexão do dispositivo.
  • Para obter a taxa de transferência máxima, use o número máximo de partições (32) ao criar o Hub IoT, se estiver a planear usar o endpoint integrado.
  • Para escalar, aumente a camada e as unidades alocadas do Hub IoT em vez de adicionar mais de um Hub IoT por região.
  • Em cenários de alto rendimento, use eventos em batch.
  • Se precisar da latência mínima possível, não use o encaminhamento e leia os eventos do ponto de acesso incorporado.
  • Como parte de sua estratégia de disponibilidade e recuperação de desastres em toda a solução, considere usar o Hub IoT opção de recuperação de desastres entre regiões.
  • Ao usar um SDK para enviar eventos para Hubs IoT, certifique-se de que as exceções geradas pela política de repetição (EventHubsException ou OperationCancelledException) sejam capturadas corretamente.
  • Para evitar a interrupção da telemetria devido à limitação e a uma cota totalmente usada, considere adicionar uma solução de dimensionamento automático personalizada .

Recomendações de configuração

Considere as seguintes recomendações para otimizar a confiabilidade ao configurar o Hub IoT do Azure:

Recomendação Descrição
Provisione um segundo Hub IoT em outra região e tenha lógica de roteamento no dispositivo. Essas configurações podem ser aprimoradas com um Serviço de Concierge.
Use o protocolo AMQP ou MQTT ao enviar eventos com frequência. AMQP e MQTT têm custos de rede mais altos ao inicializar a sessão, no entanto, HTTPS requer sobrecarga TLS extra para cada solicitação. AMQP e MQTT têm maior desempenho para editores frequentes.
Use apenas certificados validados por uma autoridade de certificação raiz no ambiente de produção se estiver usando certificados X.509 para a conexão do dispositivo. Verifique se você tem processos em vigor para atualizar o certificado antes que eles expirem.
Para obter a taxa de transferência máxima, use o número máximo de partições (32) ao criar o Hub IoT, se estiver a planear usar o ponto de extremidade interno. O número de partições de dispositivo-para-nuvem para o ponto de extremidade compatível com o Event Hub reflete o grau de paralelismo downstream que se pode alcançar. Isso permitirá que você escale para 32 entidades de processamento simultâneas e oferecerá a maior disponibilidade de envio e recebimento. Este número não pode ser alterado após a criação.
Para escalar, aumente a camada e as unidades alocadas do Hub IoT em vez de adicionar mais de um Hub IoT por região. Adicionar mais de um Hub IoT por região não oferece resiliência extra porque todos os hubs podem ser executados no mesmo cluster subjacente.
Em cenários de alta taxa de transferência, use eventos em lote. O serviço fornecerá uma matriz com vários eventos para os consumidores, em vez de uma matriz com um evento. O aplicativo consumidor deve processar essas matrizes.
Se precisar da menor latência possível, não use roteamento e leia os eventos do endpoint incorporado. Ao usar o roteamento de mensagens no Hub IoT, a latência da entrega de mensagens aumenta. Em média, a latência não deve exceder 500 ms, mas não há garantia para a latência de entrega.
Como parte de sua estratégia de disponibilidade e recuperação de desastres em toda a solução, considere usar o Hub IoT opção de recuperação de desastres entre regiões. Esta opção moverá o endpoint do IoT Hub para a região emparelhada do Azure. Somente o registro do dispositivo é replicado. Os eventos não são replicados para a região secundária. O RTO para o failover iniciado pelo cliente é entre 10 minutos e algumas horas. Para um failover iniciado pela Microsoft, o RTO é de 2-26 horas. Confirme se este RTO está alinhado com os requisitos do cliente e se encaixa na estratégia de disponibilidade mais ampla. Se for necessário um RTO mais alto, considere implementar um padrão de failover do lado do cliente.
Ao usar um SDK para enviar eventos para o Hub IoT, certifique-se de que as exceções geradas pela política de repetição (EventHubsException ou OperationCancelledException) sejam capturadas corretamente. Ao usar HTTPS, implemente um padrão de repetição adequado.

Próximo passo