Ulteriori dettagli del calcolo delle dimensioni di AWS IoT Core
Connettività
Il tuo dispositivo può eseguire il ping con una frequenza fino a 30 secondi senza costi aggiuntivi per i messaggi MQTT PINGREQ o PINGRESP.
Messaggistica
Calcolo delle dimensioni dei messaggi MQTT
|
|
|
|---|---|
|
MQTT CONNECT
|
Calcolate come le dimensioni di un messaggio, che sommano dimensioni dell'argomento Will e payload del messaggio Will. Se si utilizza MQTT5, le dimensioni del messaggio vengono calcolate anche in base a tutte le ulteriori proprietà a intestazione variabile di stringa e binarie e le proprietà Will, come le proprietà dell'utente. |
|
MQTT PUBACK (ricevuto dal dispositivo)
|
Se si utilizza MQTT5, calcolate in base alle dimensioni del messaggio incluse le proprietà dell'utente. Altrimenti, calcolate come singolo messaggio da 5 KB. |
|
MQTT SUBSCRIBE
|
Calcolate in base alle dimensioni dell'argomento inviato nel messaggio Subscribe, sommate alle dimensioni di eventuali proprietà dell'utente inviate (se si utilizza MQTT5). |
|
MQTT PUBLISH (ricevuto dal dispositivo)
|
Calcolate in base alle dimensioni di payload e argomento in byte. Se si utilizza MQTT5, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto.
|
|
MQTT PUBLISH (inviato dal servizio)
|
Calcolate in base alle dimensioni di payload e argomento in byte. Se si utilizza MQTT5, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto. |
|
MQTT RETAINED
|
Calcolate in base alle dimensioni di payload e argomento in byte. Se si utilizza MQTT5, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto. Per i messaggi in entrata MQTT pubblicati con il contrassegno RETAIN, l’account verrà calcolato in base a MQTT PUBLISH in entrata e a MQTT RETAINED |
I seguenti messaggi MQTT sono esclusi dal calcolo delle dimensioni:
- MQTT PINGREQ
- MQTT PINGRESP
- MQTT DISCONNECT
- MQTT CONNACK
- MQTT PUBACK (inviato dal servizio)
- MQTT SUBACK
- MQTT UNSUBSCRIBE
I messaggi MQTT trasferiti nell’ambito di una connessione WebSocket vengono calcolati come messaggi MQTT all’interno di una connessione TLS con autenticazione reciproca.
Calcolo delle dimensioni di richieste e risposte HTTP
|
|
|
|---|---|
|
Richieste
|
Calcolate in base al numero di messaggi da 5 KB richiesti per codificare il corpo della richiesta HTTP. Se si utilizza l’API HTTP publish message, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell’utente, dell’argomento di risposta, dei dati di correlazione e del tipo di contenuto. |
|
Risposte negative
|
Se una risposta HTTP ha codici compresi tra 4xx e 5xx e contiene un corpo del messaggio, AWS IoT Core calcola il numero di messaggi da 5 KB necessari per codificare il corpo della risposta |
|
API di gestione della connessione MQTT
|
L’API DeleteConnection viene fatturata solo per la richiesta HTTP. Le API GetConnection e ListSubscriptions vengono fatturate per la richiesta e la risposta HTTP. |
Calcolo delle dimensioni dei messaggi diretti
La messaggistica diretta consente di inviare messaggi point-to-point a singoli client IoT mediante l’API SendDirectMessage HTTP. I messaggi diretti vengono calcolati in incrementi di 5 KB della dimensione del payload dei messaggi.
|
Operazioni
|
Misurazione
|
|---|---|
|
SendDirectMessage (senza conferma di consegna)
|
Calcolato come messaggio diretto singolo in base alla dimensione del payload e dell’argomento in byte, con incrementi di 5 KB. Se sono incluse le proprietà MQTT 5.0 (proprietà utente, argomento della risposta, dati di correlazione, tipo di contenuto), vengono incluse anche nel calcolo delle dimensioni del payload. Il client ricevente riceve il messaggio come MQTT QoS 0. |
|
Invia messaggio diretto (con conferma di consegna)
|
Calcolato come messaggio diretto singolo con conferma di consegna basata sulla dimensione del payload e dell’argomento in byte, con incrementi di 5 KB. Se sono incluse le proprietà MQTT 5.0 (proprietà utente, argomento della risposta, dati di correlazione, tipo di contenuto), vengono incluse anche nel calcolo delle dimensioni del payload. Il client ricevente riceve il messaggio come MQTT QoS 1 e invia una conferma PUBACK al server. |
Calcolo delle dimensioni di LoRaWAN
|
|
|
|---|---|
|
LoRaWAN.Uplink
|
Calcolate in base al numero di messaggi (inviati dal dispositivo) |
|
LoRaWAN.Downlink
|
Calcolate in base al numero di messaggi (inviati dal servizio) |
|
LoRaWAN.Join
|
Calcolate in base al numero di messaggi (inviati dal dispositivo) |
|
LoRaWAN.UplinkACK
|
Calcolate in base al numero di messaggi (inviati dal servizio) |
|
LoRaWAN.DownlinkACK
|
Calcolate in base al numero di messaggi (inviati dal dispositivo) |
Calcolo delle dimensioni di Sidewalk
|
|
|
|---|---|
|
Sidewalk.Uplink
|
Calcolate in base al numero di messaggi (inviati dal dispositivo) |
|
Sidewalk.Downlink
|
Calcolate in base al numero di messaggi (inviati dal servizio) |
Nota bene: le dimensioni dei messaggi inviati dai dispositivi Amazon Sidewalk che utilizzano la funzionalità Integrazione di Amazon Sidewalk per connettersi ad AWS IoT Core vengono calcolate utilizzando gli scaglioni di prezzo per la messaggistica LoRaWAN.
Registro
Viene addebitata un'operazione di registro ogni volta che si effettua una chiamata a una delle seguenti operazioni API:
-
AddThingToThingGroup
-
AttachThingPrincipal
-
CreateThing
-
CreateThingGroup
-
CreateDynamicThingGroup
-
CreateThingType
-
DescribeThing
-
DescribeThingGroup
-
DescribeThingType
-
DetachThingPrincipal
-
ListPrincipalThings
-
ListThingGroups
-
ListThingGroupsForThing
-
ListThingPrincipals
-
ListThings
-
ListThingsInThingGroup
-
ListThingTypes
-
UpdateThing
-
UpdateThingGroup
-
UpdateDynamicThingGroup
-
UpdateThingGroupsForThing
-
GetWirelessDeviceStatistics
-
GetWirelessGatewayStatistics
Per tutte le operazioni List, il calcolo tiene conto delle dimensioni totali di tutti i record restituiti dalla chiamata API. Ad esempio, se una chiamata API ListThings API restituisce (50) risultati da 2 KB dal registro, la richiesta viene addebitata in base a (100) incrementi di 1 KB e viene calcolata come 100 richieste. Se acconsenti agli eventi di registro, eventuali messaggi di aggiornamento saranno soggetti alle tariffe di messaggistica.
Device Shadow
Le operazioni Device Shadow vengono calcolate quando si effettua una chiamata API GetThingShadow o UpdateThingShadow o quando un messaggio MQTT crea, aggiorna o riceve un Device Shadow. Se acconsenti agli aggiornamenti di Device Shadow, eventuali messaggi di aggiornamento saranno soggetti alle tariffe di messaggistica.
Rules Engine
Rules Engine ha le seguenti dimensioni di prezzo:
1. Regole attivate per ogni valutazione delle regole IoT
2. Azioni di regola eseguite per reindirizzare i dati verso altri servizi a valle (come Amazon S3, Amazon Kinesis, Amazon SNS). Una regola IoT può invocare fino a 10 azioni di regola IoT.
Oltre al costo del routing dei dati verso i servizi a valle, la fattura AWS includerà anche il costo della chiamata delle seguenti funzioni esterne all’interno di una regola IoT, fatturate come azioni di regola IoT: get_thing_shadow(), aws_lambda(), get_dynamodb(), get_registry_data().
Nota: 1/ Le funzioni aritmetiche e logiche SQL nelle regole IoT non vengono calcolate come azioni. 2/ La chiamata alla funzione esterna get_secret() inoltre non viene calcolata come una azione di regola IoT. 3/ Le funzioni non vengono conteggiate fino al limite di 10 azioni per regola anche se vengono fatturate come azioni di regola IoT. Consulta la guida per gli sviluppatori per i limiti dettagliati delle diverse funzioni.
Un’azione di regola IoT che invia un messaggio a una risorsa all’interno di un cloud privato virtuale (VPC) Amazon di un cliente verrà conteggiata come due azioni di regola IoT. Questa azione aggiuntiva non concorre al limite di 10 azioni per regola. Il VPC è supportato per le seguenti azioni di regole: azione Apache Kafka.
Una regola che viene attivata viene sempre calcolata, come minimo, come una regola e una azione. Ad esempio, se la tua regola IoT viene valutata, ma non viene invocata alcuna azione di regola IoT, paghi una regola IoT e una azione di regola IoT.
Le regole che elaborano un messaggio generato da AWS IoT Core vengono calcolate come singola regola, a prescindere dalle dimensioni del messaggio. Ad esempio, un documento Device Shadow da 7 KB può pubblicare un messaggio /delta o /documents piuttosto grande; tuttavia, eventuali regole avviate da un aggiornamento simile verranno calcolate come se il messaggio fosse di 5 KB.
Decodifica da Protobuf a JSON: La decodifica di un messaggio Protocol Buffer (Protobuf) in formato JavaScript Object Notation (JSON) utilizzando la funzione decode() in Rules Engine sarà calcolata come 1 azione. Rules Engine addebiterà le azioni di decodifica all’interno di una regola; queste ultime possono essere ottimizzate mettendo in cache il file descrittore. Quando si decodifica un messaggio Protobuf utilizzando Rules Engine, si pagherà per 1 regola attivata + 1 azione della regola (per l'invio dei dati a un servizio AWS a valle) + 1 decodifica da Protobuf a JSON. Tuttavia, non verranno addebitati incrementi di 5kB per la decodifica dei messaggi Protobuf in JSON. Verrà addebitato un costo per 1 decodifica (azione) fino alla dimensione massima del carico utile del Protobuf di 128kB.
Le tariffe di trasferimento dati EC2 standard elencate qui in “Trasferimento dati” si applicano alle seguenti azioni di regole: azione HTTP.
Hai trovato quello che cercavi?
Facci sapere la tua opinione in modo da migliorare la qualità dei contenuti delle nostre pagine