Quotas e limitação do Hub IoT

Este artigo explica as cotas para um hub IoT e fornece informações para ajudá-lo a entender como funciona a limitação.

Cada assinatura do Azure pode ter no máximo 50 hubs IoT e no máximo 1 hub gratuito.

Cada hub IoT é provisionado com unidades em uma camada específica. A camada e o número de unidades determinam a cota diária máxima de mensagens que você pode enviar no hub por dia. O tamanho da mensagem usado para calcular a cota diária é de 0,5 KB para um hub de camada livre e 4 KB para todas as outras camadas. Para obter mais informações, consulte Preços do Hub IoT do Azure ou [Escolha a camada certa do Hub IoT para sua solução].

Você pode encontrar o limite de cota do seu hub na coluna Número total de mensagens/dia na página de preços do Hub IoT no portal do Azure.

A camada também determina os limites de limitação que o Hub IoT impõe em todas as operações.

Aceleradores de operação

Os aceleradores de operação são limitações de taxa que são aplicadas em intervalos de minutos e destinam-se a evitar abusos. Eles também estão sujeitos à modelagem de tráfego.

É uma boa prática limitar suas chamadas para que você não atinja/exceda os limites de limitação. Se você atingir o limite, o Hub IoT responderá com o código de erro 429 e o cliente deverá recuar e tentar novamente. Esses limites são por hub (ou, em alguns casos, por hub/unidade). Para obter mais informações, consulte Repetir padrões.

Para obter detalhes de preços sobre quais operações são cobradas e em que circunstâncias, consulte Informações de faturamento.

Operações básicas e de nível padrão

A tabela a seguir mostra os limites impostos para operações que estão disponíveis em todas as camadas do Hub IoT. Os valores referem-se a um hub individual.

Limitação Livre, B1 e S1 B2 e S2 B3 e S3
Operações de registro de identidade (criar, recuperar, listar, atualizar, excluir) 1,67/seg/unidade (100/min/unidade) 1,67/seg/unidade (100/min/unidade) 83,33/seg/unidade (5.000/min/unidade)
Novas conexões de dispositivo (este limite se aplica à taxa de novas conexões, não ao número total de conexões) Superior de 100/seg ou 12/seg/unidade
Por exemplo, duas unidades S1 são 2*12 = 24 novas conexões/seg, mas você tem pelo menos 100 novas conexões/s em todas as unidades. Com nove unidades S1, você tem 108 novas conexões/seg (9 * 12) em todas as suas unidades.
120 novas conexões/seg/unidade 6.000 novas conexões/seg/unidade
Envios do dispositivo para a cloud Mais de 100 operações de envio/seg ou 12 operações de envio/seg/unidade
Por exemplo, duas unidades S1 são 2 * 12 = 24 / seg, mas você tem pelo menos 100 operações de envio/s em suas unidades. Com nove unidades S1, você tem 108 operações de envio/seg (9 * 12) em todas as suas unidades.
120 operações de envio/seg/unidade 6.000 operações de envio/seg/unidade
Carregamento de ficheiro 1,67 iniciações de upload de arquivo/seg/unidade (100/min/unidade) 1,67 iniciações de upload de arquivo/seg/unidade (100/min/unidade) 83,33 iniciações de carregamento de ficheiros/seg/unidade (5.000/min/unidade)
Consultas 20/min/unidade 20/min/unidade 1.000/min/unidade

Operações de nível padrão

A tabela a seguir mostra os aceleradores impostos para operações que estão disponíveis apenas em camadas padrão. Os valores referem-se a um hub individual.

Limitação Grátis e S1 S2 S3
Envios da cloud para o dispositivo 1,67 Operações de envio/seg/unidade (100 mensagens/min/unidade) 1,67 operações de envio/seg/unidade (100 operações de envio/min/unidade) 83,33 operações de envio/seg/unidade (5.000 operações de envio/min/unidade)
Cloud-to-device recebe
(somente quando o dispositivo usa HTTPS)
16,67 operações de receção/seg/unidade (1.000 operações de receção/min/unidade) 16,67 operações de receção/seg/unidade (1.000 operações de receção/min/unidade) 833,33 operações de receção/seg/unidade (50.000 operações de receção/min/unidade)
Métodos diretos 160KB/seg/unidade1 480KB/seg/unidade1 24MB/seg/unidade1
Twin (dispositivo e módulo) lê 100/seg Superior de 100/seg ou 10/seg/unidade 500/seg/unidade
Atualizações duplas (dispositivo e módulo) 50/seg Superior de 50/seg ou 5/seg/unidade 250/seg/unidade
Operações de trabalho
(criar, atualizar, listar, eliminar)
1,67/seg/unidade (100/min/unidade) 1,67/seg/unidade (100/min/unidade) 83,33/seg/unidade (5.000/min/unidade)
Operações do dispositivo de trabalhos
(atualizar gêmeo, invocar método direto)
10/seg Superior de 10/seg ou 1/seg/unidade 50/seg/unidade
Configurações e implantações de borda
(criar, atualizar, listar, eliminar)
0.33/sec/unit (20/min/unidade) 0.33/sec/unit (20/min/unidade) 0.33/sec/unit (20/min/unidade)
Taxa de iniciação do fluxo de dispositivos 5 novos fluxos/seg 5 novos fluxos/seg 5 novos fluxos/seg
Número máximo de fluxos de dispositivos conectados simultaneamente 50 50 50
Transferência máxima de dados de fluxo de dispositivos (volume agregado por dia) 300 MB 300 MB 300 MB

1 O tamanho do medidor de estrangulamento é de 4 KB. A limitação é baseada apenas no tamanho da carga útil da solicitação.

Detalhes de limitação

  • O tamanho do medidor determina em que incrementos seu limite de limitação é consumido. Se a carga da sua chamada direta estiver entre 0 KB e 4 KB, ela será contada como 4 KB. Você pode fazer até 40 chamadas por segundo por unidade antes de atingir o limite de 160 KB/seg/unidade.

    Da mesma forma, se a sua carga estiver entre 4 KB e 8 KB, cada chamada representa 8 KB e você pode fazer até 20 chamadas por segundo por unidade antes de atingir o limite máximo.

    Finalmente, se o tamanho da carga estiver entre 156 KB e 160 KB, você poderá fazer apenas uma chamada por segundo por unidade no hub antes de atingir o limite de 160 KB/seg/unidade.

  • Para operações de dispositivo Jobs (update twin, invoke direct method) para a camada S3, 50/seg/unit só se aplica quando você invoca métodos usando jobs. Se você invocar métodos diretos diretamente, o limite de limitação original de 24 MB/seg/unidade (para S3) será aplicado.

  • Seus aceleradores de nuvem para dispositivo e de dispositivo para nuvem determinam a taxa máxima na qual você pode enviar mensagens independentemente de blocos de 4 KB. As mensagens do dispositivo para a nuvem podem ter até 256 KB; As mensagens da nuvem para o dispositivo podem ter até 64 KB. Estes são os tamanhos máximos de mensagem para cada tipo de mensagem.

Formatação do tráfego

Para acomodar o tráfego intermitente, o Hub IoT aceita solicitações acima do acelerador por um tempo limitado. Os primeiros pedidos são processados imediatamente. No entanto, se o número de solicitações continuar a violar o acelerador, o Hub IoT começará a colocar as solicitações em uma fila e as solicitações serão processadas na taxa limite. Esse efeito é chamado de modelagem de tráfego. Além disso, o tamanho dessa fila é limitado. Se a violação do acelerador continuar, eventualmente a fila será preenchida e o Hub IoT começará a rejeitar solicitações com 429 ThrottlingException.

Por exemplo, você usa um dispositivo simulado para enviar 200 mensagens de dispositivo para nuvem por segundo para seu Hub IoT S1 (que tem um limite de 100/s de envio de dispositivo para nuvem). Durante o primeiro minuto ou dois, as mensagens são processadas imediatamente. No entanto, como o dispositivo continua a enviar mais mensagens do que o limite de aceleração, o Hub IoT começa a processar apenas 100 mensagens por segundo e coloca o restante em uma fila. Você começa a notar o aumento da latência. Eventualmente, você começa a receber 429 ThrottlingException à medida que a fila se enche e a métrica "Número de erros de limitação" do Hub IoT começa a aumentar. Para saber como criar alertas e gráficos com base em métricas, consulte Monitorar o Hub IoT.

Aceleração das operações do registro de identidade

As operações de registro de identidade do dispositivo destinam-se ao uso em tempo de execução em cenários de provisionamento e gerenciamento de dispositivos. A leitura ou atualização de um grande número de identidades de dispositivo é suportada por meio de trabalhos de importação e exportação.

Ao iniciar operações de identidade por meio de operações de atualização de registro em massa (não trabalhos de importação e exportação em massa), os mesmos limites de aceleração se aplicam. Por exemplo, se você quiser enviar uma operação em massa para criar 50 dispositivos e tiver um Hub IoT S1 com uma unidade, apenas duas dessas solicitações em massa serão aceitas por minuto. Essa limitação ocorre porque o acelerador da operação de identidade para um Hub IoT S1 com uma unidade é 100/min/unidade. Também neste caso, um terceiro pedido (e mais além) no mesmo minuto seria rejeitado porque o limite foi atingido.

Acelerador de conexões de dispositivo

O acelerador de conexões de dispositivo controla a taxa na qual novas conexões de dispositivo podem ser estabelecidas com um hub IoT. O acelerador de conexões do dispositivo não controla o número máximo de dispositivos conectados simultaneamente. A taxa de aceleração de conexões de dispositivo depende do número de unidades provisionadas para o hub IoT.

Por exemplo, se você comprar uma única unidade S1, obterá um acelerador de 100 conexões por segundo. Portanto, para conectar 100.000 dispositivos, leva pelo menos 1.000 segundos (aproximadamente 16 minutos). No entanto, você pode ter tantos dispositivos conectados simultaneamente quanto tiver dispositivos registrados em seu registro de identidade.

Outros limites

O Hub IoT impõe outros limites operacionais:

Operação Limite
Dispositivos O número total de dispositivos mais módulos que podem ser registrados em um único hub IoT é limitado a 1.000.000.
Carregamentos de ficheiros 10 carregamentos simultâneos de ficheiros por dispositivo.
Empregos1 Os trabalhos simultâneos máximos são 1 (para Free e S1), 5 (para S2) e 10 (para S3). No entanto, o máximo de trabalhos simultâneos de importação/exportação de dispositivos é 1 para todas as camadas.
O histórico de trabalho é mantido até 30 dias.
Parâmetros de avaliação adicionais Os hubs SKU básicos e padrão podem ter 10 pontos de extremidade adicionais. Os hubs SKU gratuitos podem ter um ponto de extremidade adicional.
Consultas de roteamento de mensagens Os hubs SKU básicos e padrão podem ter 100 consultas de roteamento. Os hubs SKU gratuitos podem ter cinco consultas de roteamento.
Melhoramentos das mensagens Os hubs SKU básicos e padrão podem ter até 10 enriquecimentos de mensagens. Os hubs SKU gratuitos podem ter até dois enriquecimentos de mensagens.
Mensagens de dispositivo para cloud Tamanho máximo da mensagem: 256 KB
Mensagens danuvem para o dispositivo 1 Tamanho máximo da mensagem 64 KB. O máximo de mensagens pendentes para entrega é de 50 por dispositivo.
Métododireto 1 O tamanho máximo da carga direta do método é de 128 KB para a solicitação e 128 KB para a resposta.
Configurações automáticas dedispositivos e módulos 1 100 configurações por hub SKU básico ou padrão. 10 configurações por hub SKU livre.
Implantações automáticas doIoT Edge 1 50 módulos por implantação. 100 implantações (incluindo implantações em camadas) por hub SKU básico ou padrão. 10 implantações por hub SKU gratuito.
Gêmeos1 O tamanho máximo das propriedades desejadas e das seções de propriedades relatadas é de 32 KB cada. O tamanho máximo da seção de tags é de 8 KB. O tamanho máximo de cada propriedade individual em cada seção é de 4 KB.
Políticas de acesso partilhado O número máximo de políticas de acesso compartilhado é 16. Dentro desse limite, o número máximo de políticas de acesso compartilhado que concedem acesso de conexão de serviço é 10.
Restringir o acesso à rede de saída O número máximo de FQDNs permitidos é 20.
Certificados de AC x509 O número máximo de certificados de CA x509 que podem ser registrados no Hub IoT é 25.

1 Esse recurso não está disponível na camada básica do Hub IoT. Para obter mais informações, consulte Como escolher o Hub IoT certo.

Aumentar a quota ou o limite de aceleração

A qualquer momento, você pode aumentar as cotas ou os limites de aceleração aumentando o número de unidades provisionadas em um hub IoT.

Latência

O Hub IoT se esforça para fornecer baixa latência para todas as operações. No entanto, devido às condições da rede e outros fatores imprevisíveis, não pode garantir uma certa latência. Ao projetar sua solução, você deve:

  • Evite fazer suposições sobre a latência máxima de qualquer operação do Hub IoT.
  • Provisione seu hub IoT na região do Azure mais próxima de seus dispositivos.
  • Considere usar o Azure IoT Edge para executar operações sensíveis à latência no dispositivo ou em um gateway próximo ao dispositivo.

Várias unidades do Hub IoT afetam a limitação conforme descrito anteriormente, mas não fornecem benefícios ou garantias adicionais de latência.

Se vir aumentos inesperados na latência da operação, contacte o Suporte da Microsoft.

Próximos passos

Para obter uma discussão aprofundada sobre o comportamento de limitação do Hub IoT, consulte a postagem do blog Limitação do Hub IoT e você.