Quote e limitazioni dell'hub IoT
Questo articolo illustra i limiti applicabili alle risorse dell'hub IoT.
Ogni sottoscrizione di Azure può avere al massimo 50 hub IoT e al massimo un hub nel livello gratuito.
Viene effettuato il provisioning di ogni hub IoT con unità in un livello specifico. Il livello e il numero di unità determinano la quota giornaliera massima dei messaggi. La dimensione del messaggio usata per calcolare la quota giornaliera è di 0,5 kB per un hub di livello gratuito e di 4 kB per tutti gli altri livelli. Per altre informazioni, vedere Prezzi dell'hub IoT di Azure o Scegliere il livello dell'hub IoT appropriato per la soluzione.
È possibile trovare il limite di quota dell'hub nel portale di Azure. La pagina Panoramica dell'hub IoT elenca la quota messaggi giornaliera. È anche possibile visualizzare e regolare questo limite nelle impostazioni hub> Prezzi e scalabilità.
Il livello determina anche le limitazioni che l'hub IoT applica alle operazioni.
Limitazioni per le operazioni
Le limitazioni per le operazioni sono limitazioni di frequenza, applicate a intervalli di minuti allo scopo di evitare abusi. Sono soggetti anche alla modellazione del traffico.
È consigliabile limitare le chiamate in modo da non raggiungere/superare il valore massimo della limitazione. Se si raggiunge il limite, l'hub IoT risponde con il codice di errore 429 e il client deve eseguire il back-off e riprovare. Questi limiti sono per hub (o in alcuni casi per hub per unità). Per altre informazioni, vedere Modelli di ripetizione dei tentativi.
Per informazioni dettagliate sui prezzi relativi alle operazioni che vengono addebitate e in quali circostanze, vedere le informazioni di fatturazione.
Operazioni di livello Basic e Standard
La tabella seguente illustra le limitazioni applicate per le operazioni disponibili in tutti i livelli dell'hub IoT. I valori fanno riferimento a un singolo hub.
Limitazione | Nessuna, B1 e S1 | B2 e S2 | B3 e S3 |
---|---|---|---|
Operazioni del registro delle identità (creazione, recupero, elenco, aggiornamento, eliminazione) | 1,67/sec/unità (100/min/unità) | 1,67/sec/unità (100/min/unità) | 83,33/sec/unità (5000/min/unità) |
Nuove connessioni del dispositivo (questa limitazione si applica alla frequenza delle nuove connessioni, non al numero totale di connessioni) | Più di 100/sec o 12/sec/unità Ad esempio, due unità S1 sono 2*12 = 24 nuove connessioni/sec, ma si hanno almeno 100 nuove connessioni/sec tra le unità. Con nove unità S1 si otterranno 108 nuove connessioni/sec (9*12) tra le unità. |
120 nuove connessioni/sec/unità | 6000 nuove connessioni/sec/unità |
Inoltri dal dispositivo al cloud | Maggiore di 100 operazioni di invio/sec o 12 operazioni di invio/sec/unità Ad esempio, due unità S1 sono 2*12 = 24/sec, ma si hanno almeno 100 operazioni di invio/sec tra le unità. Con nove unità S1 si otterranno 108 operazioni di invio/sec (9*12) tra le unità. |
120 operazioni di invio/sec/unità | 6000 operazioni di invio/sec/unità |
Caricamento di file | 1,67 operazioni di avvio di caricamento del file/sec/unità (100/min/unità) | 1,67 operazioni di avvio di caricamento del file/sec/unità (100/min/unità) | 83,33 operazioni di avvio di caricamento del file/sec/unità (5000/min/unità) |
Query | 20/min/unità | 20/min/unità | 1000/min/unità |
Operazioni di livello Standard
La tabella seguente illustra le limitazioni applicate per le operazioni disponibili solo nei livelli standard. I valori fanno riferimento a un singolo hub.
Limitazione | Gratuito e S1 | S2 | S3 |
---|---|---|---|
Inoltri dal cloud al dispositivo | 1,67 operazioni di invio/sec/unità (100 messaggi/min/unità) | 1,67 operazioni di invio/sec/unità (100 operazioni di invio/min/unità) | 83,33 operazioni di invio/sec/unità (5000 operazioni di invio/min/unità) |
Ricezioni dal cloud al dispositivo (solo quando il dispositivo usa HTTPS) |
16,67 operazioni di ricezione/sec/unità (1000 operazioni di ricezione/min/unità) | 16,67 operazioni di ricezione/sec/unità (1000 operazioni di ricezione/min/unità) | 833,33 operazioni di ricezione/sec/unità (50.000 operazioni di ricezione/min/unità) |
Metodi diretti | 160 KB/sec/unità1 | 480 KB/sec/unità1 | 24 MB/sec/unità1 |
Letture di dispositivi e moduli gemelli | 100/sec | Più di 100/sec o 10/sec/unità | 500/sec/unità |
Aggiornamenti di dispositivi e moduli gemelli | 50/sec | Più di 50/sec o 5/sec/unità | 250/sec/unità |
Operazioni dei processi (creazione, aggiornamento, elenco, eliminazione) |
1,67/sec/unità (100/min/unità) | 1,67/sec/unità (100/min/unità) | 83,33/sec/unità (5000/min/unità) |
Operazioni dei dispositivi dei processi (aggiornamento del dispositivo gemello, chiamata del metodo diretto) |
10/sec | Più di 10/sec o 1/sec/unità | 50/sec/unità |
Configurazioni e distribuzioni Edge (creazione, aggiornamento, elenco, eliminazione) |
0,33/sec/unità (20/min/unità) | 0,33/sec/unità (20/min/unità) | 0,33/sec/unità (20/min/unità) |
Velocità di avvio del flusso dispositivo | 5 nuovi flussi/sec | 5 nuovi flussi/sec | 5 nuovi flussi/sec |
Numero massimo di flussi dispositivo connessi contemporaneamente | 50 | 50 | 50 |
Volume massimo di trasferimento dei dati del flusso di dispositivi (volume aggregato al giorno) | 300 MB | 300 MB | 300 MB |
1 La dimensione del contatore delle limitazioni è 4 kB. La limitazione è basata solo sulle dimensioni del payload della richiesta.
Dettagli della limitazione
Le dimensioni del contatore determinano l'incremento del valore massimo della limitazione utilizzato. Se il payload della chiamata diretta è compreso tra 0 kB e 4 kB, viene conteggiato come 4 kB. È possibile effettuare fino a 40 chiamate al secondo per ogni unità prima di raggiungere il limite di 160 KB/sec/unità.
Analogamente, se il payload è compreso tra 4 KB e 8 KB, ogni chiamata utilizza 8 KB ed è possibile eseguire fino a 20 chiamate al secondo per ogni unità prima di raggiungere il limite massimo.
Infine, se le dimensioni del payload sono comprese tra 156 kB e 160 kB, è possibile effettuare una sola chiamata al secondo per unità nell'hub prima di raggiungere il limite di 160 kB/sec/unità.
Per Operazioni del dispositivo processi (aggiornamento gemello, richiamare il metodo diretto) per il livello S3, 50/sec/unità si applica solo quando si richiamano metodi usando processi. Se si richiamano i metodi diretti, si applica il valore massimo della limitazione originale di 24 MB/sec/unità (per S3).
Le limitazioni da cloud a dispositivo e da dispositivo a cloud determinano la velocitàmassima in cui è possibile inviare messaggi indipendentemente dai blocchi di 4 kB. I messaggi da dispositivo a cloud possono avere una dimensione massima di 256 kB; i messaggi da cloud a dispositivo possono avere una dimensione massima di 64 kB. Queste sono le dimensioni massime dei messaggi per ogni tipo di messaggio.
Modellazione del traffico
Per gestire i picchi di traffico, l'hub IoT accetta richieste superiori alla limitazione per un periodo di tempo limitato. Le prime richieste vengono elaborate immediatamente. Tuttavia, se il numero di richieste continua a violare la limitazione, l'hub IoT inizia a inserire le richieste in una coda e le richieste vengono elaborate alla velocità limite. Questo effetto è denominato modellazione del traffico. Inoltre, la dimensione di questa coda è limitata. Se la violazione della limitazione continua, alla fine la coda si riempie e l'hub IoT inizia a rifiutare le richieste restituendo l'errore 429 ThrottlingException
.
Ad esempio, si inviano 200 messaggi da dispositivo a cloud al secondo all'hub IoT S1 (con un limite di 100 messaggi al secondo). Per il primo minuto o due, i messaggi vengono elaborati immediatamente. Tuttavia, poiché il dispositivo continua a inviare più messaggi rispetto al valore massimo della limitazione, l'hub IoT inizia a elaborare solo 100 messaggi al secondo e inserisce il resto in una coda. Si inizia a notare una maggiore latenza. Alla fine, si inizia a ricevere 429 ThrottlingException
quando la coda si riempie e il "numero di errori di limitazione" nelle metriche dell'hub IoT inizia ad aumentare. Per informazioni su come creare avvisi e grafici in base alle metriche, vedere Monitorare hub IoT.
Limitazione delle operazioni del registro delle identità
Le operazioni del registro delle identità del dispositivo sono destinate all'uso in fase di esecuzione negli scenari di gestione e provisioning dei dispositivi. L'operazione di lettura o aggiornamento di un numero elevato di identità dei dispositivi è supportata tramite i processi di importazione ed esportazione.
Gli stessi limiti di limitazione si applicano alle operazioni di identità eseguite tramite operazioni di aggiornamento bulk del Registro di sistema (non processi di importazione ed esportazione bulk). Ad esempio, se si inviano più operazioni in blocco per creare 50 dispositivi ciascuno e si dispone di un hub IoT S1 con una unità, vengono accettate solo due di queste richieste bulk al minuto. Questa limitazione è dovuta al fatto che la limitazione dell'operazione di identità per un hub IoT S1 con un'unità è di 100/min/unità. In questo caso, anche una terza richiesta (e le successive) nello stesso minuto verrebbe rifiutata perché è stato raggiunto il limite.
Limitazione delle connessioni del dispositivo
La limitazione delle connessioni del dispositivo determina la frequenza con cui possono essere stabilite nuove connessioni del dispositivo con un hub IoT. La limitazione delle connessioni del dispositivo non è collegata al numero massimo di dispositivi connessi contemporaneamente. Aumentare il numero di unità in un hub IoT per aumentare la velocità di connessione del dispositivo .
Ad esempio, se si acquista una singola unità S1, si ottiene un limite di 100 connessioni/secondo. Di conseguenza, per connettere 100.000 dispositivi sono necessari almeno 1000 secondi (circa 16 minuti). Tuttavia, è consentito un numero di dispositivi connessi simultaneamente pari al numero di dispositivi registrati nel registro delle identità (fino a 1,000,000).
Altri limiti
L'hub IoT applica altri limiti operativi:
Operazione | Limite |
---|---|
Identità dei dispositivi e dei moduli | Attualmente, il numero totale di dispositivi e moduli che è possibile registrare in un singolo hub IoT è pari a 1.000.000. |
Caricamenti di file | 10 caricamenti di file simultanei per dispositivo. |
Processi1 | Il numero massimo di processi simultanei è 1 (per il livello Gratuito e S1), 5 (per S2) e 10 (per S3). Tuttavia, il numero massimo di processi di importazione/esportazione dei dispositivi simultanei è 1 per tutti i livelli. La cronologia dei processi viene mantenuta per un massimo di 30 giorni. |
Altri endpoint | Gli hub SKU Basic e standard possono avere 10 endpoint aggiuntivi. Agli hub SKU gratuiti può essere associato solo un endpoint aggiuntivo. |
Query di routing dei messaggi | Gli hub SKU Basic e Standard possono avere 100 query di routing. Gli hub SKU gratuiti possono avere cinque query di routing. |
Arricchimenti dei messaggi | Gli hub SKU Basic e Standard possono avere fino a 10 arricchimenti di messaggi. Gli hub SKU gratuiti possono avere fino a due arricchimenti di messaggi. |
Messaggistica da dispositivo a cloud | Dimensioni massime dei messaggi 256 KB |
Messaggistica da cloud a dispositivo1 | La dimensione massima dei messaggi è 64 KB. Il numero massimo di messaggi in sospeso per il numero di recapito è 50 per dispositivo. |
Metodo diretto1 | La dimensione massima del payload del metodo diretto è 128 KB per la richiesta e 128 KB per la risposta. |
Configurazioni automatiche di dispositivi e moduli 1 | 100 configurazioni per hub SKU basic o standard. 10 configurazioni per hub SKU gratuito. |
Distribuzioni automatiche di IoT Edge1 | 50 moduli per distribuzione. 100 distribuzioni (incluse le distribuzioni a più livelli) per hub SKU basic o standard. 10 distribuzioni per hub SKU gratuito. |
Dispositivi gemelli1 | Le dimensioni massime delle sezioni delle proprietà desiderate e delle proprietà segnalate sono 32 KB per sezione. La dimensione massima della sezione dei tag è 8 KB. La dimensione massima di ogni singola proprietà in ogni sezione è di 4 kB. |
Criteri di accesso condivisi | Il numero massimo di criteri di accesso condiviso è 16. Entro tale limite, il numero massimo di criteri di accesso condiviso che concedono l'accesso alla connessione al servizio è 10. |
Limitare l'accesso alla rete in uscita | Il numero massimo di nomi di dominio completi consentiti è 20. |
Certificati CA x509 | Il numero massimo di certificati CA x509 che possono essere registrati nell'hub IoT è 25. |
1 Questa funzionalità non è disponibile nel livello di base dell'hub IoT. Per altre informazioni, vedere How to choose the right IoT Hub (Come scegliere il livello dell'hub IoT corretto).
Aumentare la quota o il limite di limitazione
È possibile incrementare i limiti delle quote o delle limitazioni in qualsiasi momento aumentando il numero di unità sottoposte a provisioning in un hub IoT.
Latenza
L'hub IoT punta a fornire bassa latenza per tutte le operazioni. Tuttavia, a causa delle condizioni della rete e di altri fattori imprevedibili, non può garantire una certa latenza. Quando si progetta la soluzione, è necessario:
- Evitare di fare ipotesi sulla latenza massima di qualsiasi operazione dell'hub IoT.
- Eseguire il provisioning dell'hub IoT nell'area di Azure più vicina ai dispositivi.
- Considerare l'eventualità di usare Azure IoT Edge per eseguire operazioni sensibili alla latenza sul dispositivo o su un gateway vicino al dispositivo.
Aggiungere unità all'hub IoT influisce sulla limitazione come descritto in precedenza, ma non fornisce prestazioni di latenza aggiuntiva o garanzie.
In caso di incremento imprevisto della latenza dell'operazione, contattare il supporto tecnico Microsoft.