Skip to content

MQTT Publish without callback? #629

Discussion options

You must be logged in to vote

IoT Core has a 100 publish per second per connection limit. In MQTT311, there is no way to negatively acknowledge a publish (ie reject) and so IoT Core just drops publishes that exceed that limit. In that case, there will never be a response; setting an operation timeout will cause the SDK client to give up waiting and notify you of a failure.

Note that keeping the inflight publishes to < 100 doesn't address this limit since a good connection to AWS will enable you to exceed the 100 publish-per-second while staying under the inflight count (what MQTT5 calls ReceiveMaximum).

To avoid this you have a couple of options:

  1. Self-regulate your publishes to keep them under 100 TPS.
  2. Set an operati…

Replies: 1 comment 2 replies

Comment options

You must be logged in to vote
2 replies
@johnchienbronci
Comment options

@jmklix
Comment options

Answer selected by jmklix
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
3 participants