[AWS IoT] IoT Core limit of 100 transactions per second for each topic ?

0

I am collecting Industrial data using a custom component (client) that reads the data and publishes it on IoT Core using IPC on a specific topic. However, i was reading this guide (https://docs.aws.amazon.com/greengrass/v2/developerguide/ipc-iot-core-mqtt.html) where it says that IoT core has a limit of 100 transactions per second which is not optimal for me. Does the limit arise on a single topic or on IoT Core ?

已提问 1 个月前168 查看次数
1 回答
2
已接受的回答

Hello,

All IoT Core limits are posted here: https://docs.aws.amazon.com/general/latest/gr/iot-core.html#message-broker-limits.

The limit of 100TPS applies per connection to IoT Core.

AWS
专家
已回答 1 个月前
profile picture
专家
已审核 1 个月前
profile pictureAWS
专家
已审核 1 个月前
  • Hello, ty for the aswer .By connection in my case you mean the client that is deployed on a linux machine and connects to IoT Core right ? if yes it would mean that that single machine will be able to publish at most 100 messages per second. Since in my case a linux machine would have to handle a larger amount of data to read, how would I get around that ?

  • Correct, there will be a single connection. You should look to decrease the amount of data that you're trying to send to IoT Core. You may look at using StreamManager for bulk data ingestion: https://docs.aws.amazon.com/greengrass/v2/developerguide/work-with-streams.html.

    Consider down-sampling data before sending it using MQTT, or only sending changed values instead of every value for example.

  • Connections are per-MQTT connection (w/ unique clientId per connection). You can have multiple connections on a single device, but to Michael's response, there are probably other options. If it's ingest only you could also use HTTP to publish messages. Note that this can be slower than MQTT if attempting via a single thread or process though.

  • Thanks for the answers. Just to make sure I understood correctly : In the scenario where I have two Custom-Components posting messages to a topic via IPC and I have an MQTT Bridge deployed to forward these messages to IoT Core. In this scenario how many connections do I have active towards IoT Core ? Do I own the same limit of 100 TPS ?

    Because if the number of connections is relative to how many custom-components (in py using ipc cdk's) I have deployed on a single instance then I can deploy more of them to handle more connections in parallel.

  • There is only 1 connection to AWS IoT Core from Greengrass. The limit is still 100 TPS. Do not use the MQTT Bridge component for this; use IPC to publish to iot core.

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则