tencent cloud

TDMQ for MQTT

DocumentationTDMQ for MQTTProduct IntroductionProduct Constraints and Usage Quota

Product Constraints and Usage Quota

PDF
Focus Mode
Font Size
Last updated: 2026-04-01 16:21:33
To ensure stable performance of the cluster, TDMQ for MQTT imposes some usage limits based on different sales specification differences. For key feature differences between sales specifications, refer to Product Series. Below introduces the dimensional limitations you may encounter when using MQTT.

Sales Specification Limits

Limit Item
Limit Description
Behavior After Exceeding the Limit
Recommendation
Cluster TPS Limit
Strictly limited according to the specifications selected on the purchase page.
Note: The settings of the QoS and cleanSession parameters affect TPS calculations. One TPS is not equivalent to producing or sending one message. For details, see Billing Overview.
After the TPS limit is exceeded, message production or consumption requests will be rejected and result in errors. For details, see Quota and Flow Control Instructions.
You can view the relevant throttling metrics in the console. For details, see Monitoring Instructions.
When making a purchase, estimate traffic based on the actual situation. When traffic throttling occurs, you can choose to upgrade cluster specifications to handle sudden traffic spikes.
Number of Client Connections to the Cluster
Strictly limited according to the specifications selected on the purchase page.
Client connections will be rejected, and CONNECT requests will return an error.
When making a purchase, estimate the number of clients based on the actual situation. When the number of clients reaches the upper limit, you can choose to upgrade cluster specifications.
Number of Cluster Subscriptions
30 x Maximum number of client connections. The number of cluster subscriptions includes shared subscriptions and automatic subscriptions.
New client subscriptions will be rejected, and SUBSCRIBE requests will return an error.
When quota conflicts occur across multiple subscription scenarios, subscriptions are throttled according to the following priority: non-clean-session subscriptions > Auto Subscribe rules > manual subscriptions added by clients. For details, see Auto Subscribe Instructions.
Number of Topic Filters Subscribed per Client (Client ID)
30. The number of cluster subscriptions includes shared subscriptions and automatic subscriptions.
New client subscriptions will be rejected, and SUBSCRIBE requests will return an error.
When quota conflicts occur across multiple subscription scenarios, subscriptions are throttled according to the following priority: non-clean-session subscriptions > Auto Subscribe rules > manual subscriptions added by clients. For details, see Auto Subscribe Instructions.
Cluster Subscription Rate
Maximum number of subscription requests (MQTT SUBSCRIBE requests) that a cluster can accept per second, whose value is the greater of 100 and 1/100 of the number of client connections in the cluster specification, that is, max(100, ClientNum/100).
New client subscriptions will be rejected, and SUBSCRIBE requests will return an error.
Cluster Unsubscription Rate
Maximum number of unsubscription requests (MQTT UNSUBSCRIBE requests) that a cluster can accept per second, whose value is the greater of 100 and 1/100 of the number of client connections in the cluster specification, that is, max(100, ClientNum/100).
New client unsubscriptions will be rejected, and UNSUBSCRIBE requests will return an error.
Cluster Connection Creation Rate
max(100, ClientNum/100). If the maximum number of connections for a cluster is 10000, the number of new client connections allowed per second is 100. Up to 100 new connections can be established per second.
Client connections will be rejected, and CONNECT requests will return an error.
Rate of Connections with Will Messages
100. Number of new client connections with Will messages allowed per second.
Client connections will be rejected, and CONNECT requests will return an error.

Data Plane Service Usage Limits

To ensure server stability and performance, with consideration for open-source protocol standards and specifications, TDMQ for MQTT has the following limits. If specific limit items conflict with current usage scenarios, corresponding operations can be performed based on recommendations in the table. For Platinum Edition clusters, some limit items can be adjusted through ticket service and expert support.
Limit Item Category
Limit Item
Limit Item Description
Behavior after Exceeding the Limit
Recommendation
Resource Naming
Client ID and Alias
Unique within a single cluster. If multiple clients or devices use the same Client ID, they may take over each other, causing disconnections.
Supported characters: digits 0–9, lowercase letters a–z, uppercase letters A–Z, and three special characters: Hyphen (-), Underscore (_), and At sign (@).
Length: 128 bytes.
Client connections will be rejected, and CONNECT requests will be rejected.
If the actual need exceeds the current specification limit, you can contact us through a ticket.
Topic Name
Channel and path for message transmission defined in the MQTT protocol.
Supported characters: UTF-8 encoded characters.
Length: 256 bytes.
Once the quota is reached, client PUBLISH requests will be rejected.
Number of Topic Levels
10. A topic name can contain up to 9 forward slashes (/).
Once the quota is reached, client PUBLISH or SUBSCRIBE requests will be rejected.
Number of Topic Prefixes
Default: 20.
Once the quota is reached, new topic prefixes cannot be created.
Message Properties and Body
Message Size
4MiB, which is the size of a complete packet.
An error will occur if the message sent exceeds the allowed quota.
If the actual need exceeds the current specification limit, you can contact us through a ticket.
Content Type Property Length
256 bytes, applicable only to MQTT 5.0.
Client connections (CONNECT) will be rejected, and PUBLISH requests will return an error.
User Property Length
8KB, applicable only to MQTT 5.0.
An error will occur if the message sent exceeds the allowed quota.
Correlation Data Property Length
8KB, applicable only to MQTT 5.0.
An error will occur if the message sent exceeds the allowed quota.
Length of Message Properties (Excluding Message Body)
16KB
An error will occur if the message sent exceeds the allowed quota.
Maximum Number of Topic Aliases
Disabled by default. Up to 10 per client.
Client connections exceeding the limit will be disconnected.
Message Retention Rules
Retention Time for Unconsumed Messages (Including Retained Messages)
3 days.
Messages will be deleted if they exceed the retention period.
Platinum Edition clusters can be adjusted through ticket service and expert support.
Maximum Number of Retained Messages per Cluster
10000
Once this limit is reached, new PUBLISH requests for retained messages will be rejected by the server.
Message Sending and Receiving
Maximum Number of Unacknowledged Messages (QoS > 0) Received by the Server per Session
For QoS 1 and 2 messages, the maximum number of unacknowledged messages per client is 32.
The server will disconnect the client if it receives messages exceeding the quota.
Platinum Edition clusters can be adjusted through ticket service and expert support.
Maximum Number of Unacknowledged Messages (QoS > 0) Sent by the Server per Session
For QoS 1 and 2 messages, the maximum number of unacknowledged messages per client is 16.
For clients using the MQTT 5 protocol, the limit can be adjusted via the Receive Maximum setting, with a maximum of 1024.
Once the quota is reached, the server stops sending messages to the client.
HTTP API
Each HTTP connection consumes one connection from the quota. Each call is counted as a QoS 1 message for TPS calculation. For details, see API Usage Details.
Once the quota is reached, any calls will return an error.
Number of Queued Messages per Cluster
No quantity limit, but subject to the message retention period.
-
Rate of Retained Message Publishing and Consumption per Cluster
100 messages per second.
Once the quota is reached, message publish requests will return an error. The server will stop sending messages to the client.
Client Connection
Client Heartbeat Check Cycle
(Keep Alive Interval)
30–1200 seconds. According to the protocol, if the server does not receive any message within 1.5 times the Keep Alive interval, it will consider the current connection invalid.
If the interval set by the client exceeds this limit (default: 1200s), 1200s is applied. If the interval set by the client is less than 30s, 30s is applied.
-
Number of New Connections per Client ID
1 per second, 10 per minute.
Client connections will be rejected, and CONNECT requests will return an error.
-
HTTP Query for Client Online Status
Each HTTP connection consumes one connection from the quota. Each message call is counted as a QoS 1 message for TPS calculation. For details, see API Usage Details.
API calls will fail once the limit is exceeded.
When making a purchase, estimate the number of clients based on the actual situation. When the number of clients reaches the upper limit, you can choose to upgrade cluster specifications.
WebSocket Connection Time
24 hours.
Automatically disconnects when the connection time is exceeded.
-
Offline Client Status Retention Time
Retained for 3 days by default. For clients using the MQTT 5 protocol, the retention period can be adjusted by setting Session Expiry Interval, up to 3 days.
Client status will be deleted if it exceeds the retention period.
Platinum Edition clusters can be adjusted through ticket service and expert support.
Offline Client Status Count Limit
The cluster connection limit applies to both offline and online clients.
When the total number of online and offline clients exceeds the cluster's client connection limit, additional client connections will be rejected.
Certificate
Number of Server Certificates per Cluster
3, up to 10.
-
Platinum Edition clusters can be adjusted through ticket service and expert support.
Number of CA Certificates per Cluster
32
Automatic or manual registration will fail once the limit is exceeded.
Automatic Subscription
Number of Automatic Subscription Rules
Defaults to 10, with a maximum of 20.
New automatic subscription rules cannot be created.
If the actual need exceeds the current specification limit, you can contact us through a ticket.
Number of Subscriptions per Automatic Subscription Rule
Defaults to 20, with a maximum of 30.
New subscriptions cannot be added to the rule. Any additions will not take effect.
Shared Subscription
Maximum Number of Shared Subscription Groups per Cluster
20
Once the quota is reached, client subscription (SUBSCRIBE) requests will return an error.
Platinum Edition clusters can be adjusted through ticket service and expert support.
Maximum Number of Subscription Expressions per Shared Subscription Group
10, that is, the number of filters in $share/{ShareName}/{filter}.
Once the quota is reached, client subscription (SUBSCRIBE) requests will return an error.
Number of Clients per Shared Subscription Group
1024
Once the quota is reached, client subscription (SUBSCRIBE) requests will return an error.
Message Enhancement Rules
Number of Message Enhancement Rules per Cluster
10. Each rule can have up to 10 key-value user properties, with each property value not exceeding 8KB.
Once the limit is exceeded, any requests to add new message enhancement rules will fail.
Other Features
Number of Propagation Properties per Client
Up to 10 key-value pairs. For details, see Propagation Properties.
Once the limit is exceeded, any requests to add new propagation properties will fail. You need to call the API to delete existing properties before adding new ones.
Number of Device Identities per Cluster
The limit is equal to the number of client connections to the cluster. For example, a cluster with 2000 TPS and 2000 connections supports up to 2000 device identities.
Once the limit is exceeded, calling the device identity registration API will result in an error.

MQTT Protocol Usage Limits

TDMQ for MQTT currently supports all features of V3.1.1 and all features of the 5.0 protocol except the following:
1. AUTH requests not supported.
2. Will Delay Interval cannot be specified.
3. Server Redirection not supported.
4. The Topic Alias feature is in grayscale. If needed, contact us.
5. When QoS is set to 2, duplicate messages may occur under certain extreme conditions (for example, network jitter). Ensure proper idempotency processing when necessary.

Help and Support

Was this page helpful?

Help us improve! Rate your documentation experience in 5 mins.

Feedback