Number of messages mqtt subscriber can process per second

0

We will have 10k devices which will publish the messages to a single mqtt. So generally, 10k messages per second will be published to a single topic. We have subscriber in java/spring-boot. I have read somewhere that subscriber can able to process at max 100 messages/second. If that is the case, then in order to support such scale we need to have 1k pods of this microservice and then use shared subscription which is not feasible. So I wanted to understand that does this number (100 message per second subscriber can process) is fixed or it is adjustable or is it dependent on other factor as well like the time required to process a single message etc.

caspi
已提问 1 年前1205 查看次数
1 回答
3

Hi Happs,

the limit of messages per second per connection you are referring to is a non adjustable limit. In such a fan-in scenario it is a best practice to route your messages from multiple devices with an IoT rule to another AWS service like Kinesis Data Streams/Data Firehose or SQS. You can find more information about such patterns in the Designing MQTT Topics for AWS IoT Core whitepaper.

Cheers,
Philipp

AWS
专家
已回答 1 年前
profile pictureAWS
专家
Greg_B
已审核 1 年前
  • We will have 10k devices which will publish the messages to a single mqtt. So generally, 10k messages per second will be published to a single topic.

    Just to add, we typically recommend that each device publish to its own unique topics, and the IoT Core policy use policy variables to achieve least privilege. The rules engine can use wildcards to still achieve the fan-in that Philipp mentions.

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

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

回答问题的准则