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.

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南