tencent cloud

消息队列 MQTT 版

动态与公告
新功能发布记录
产品简介
TDMQ 产品系列介绍与选型
什么是消息队列 MQTT 版
应用场景
技术架构
产品系列
MQTT 协议兼容说明
开源对比
高可用
产品约束与使用配额
基本概念
开服地域
购买指南
计费概述
续费说明
查看消费明细
欠费说明
退费说明
快速入门
入门流程指引
准备工作
公网接入
VPC 网络接入
用户指南
使用流程指引
配置账号权限
新建集群
管理 Topic
连接集群
查询消息
管理客户端
管理集群
查看监控和配置告警
数据集成
集成数据到云函数 SCF
集成数据到 CKafka
集成数据到 RocketMQ
开发指南
MQTT 5 高级特性
数据面 HTTP 接口说明
配置自定义域名
配置 SQL 过滤
配置点对点订阅
MQTT over QUIC
管理客户端订阅
消息增强规则
实践教程
MQTT 客户端开发注意事项
可观测能力
Topic 与通配符订阅
API 参考
History
Introduction
API Category
Making API Requests
Cluster APIs
Topic APIs
Authorization Policy APIs
User APIs
Client APIs
Message Enhancement Rule APIs
Message APIs
Data Types
Error Codes
SDK 参考
接入点格式
Java SDK
C SDK
Javascript/Node.JS/小程序
Go SDK
iOS SDK
JavaScript SDK
Dart SDK
Python SDK
.NET
安全与合规
权限管理
常见问题
相关协议
隐私协议
数据处理和安全协议
消息队列 MQTT 版服务等级协议
联系我们

配置自动订阅

PDF
聚焦模式
字号
最后更新时间: 2026-01-30 15:10:02
自动订阅是 MQTT 在标准协议外额外支持的功能,允许在客户端连接时​​,根据预先在控制台配置的规则,自动建立预设订阅关系​​,无需客户端额外发起订阅和发送 SUBSCRIBE 报文。该功能适用于以下场景:
物联网设备统一管理订阅行为
简化客户端代码逻辑
确保指定设备自动订阅关键业务主题(如指令下发通道),无需设备主动发起订阅

约束与限制

当前功能灰度中,如控制台提示当前集群暂未开启该功能, 请提交工单联系我们申请。
单集群下最多支持创建10条自动订阅规则。

订阅规则说明

自动订阅规则会在客户端​​连接时进行判断​。若客户端已经在线,在配置完成该客户端的自动订阅规则后,客户端不会立刻订阅对应的主题。这种情况下,自动订阅规则只会在客户端​下次连接时生效。
自动订阅规则如果出现配置冲突(例如同一用户名订阅相同的 Topic Filter 的订阅选项不一致),将以最新配置的规则为准,即规则会按照时间顺序先后覆盖。
自动订阅规则内的订阅数量也会被计算在集群和单个 client ID 的订阅数量限额内(详见产品约束与使用配额),因此请注意自动订阅规则的数量,避免滥用。
当多个订阅场景出现限额冲突时,将按照“非 Clean Session 订阅(历史已存在的订阅) > 自动订阅规则 > 客户端新增的手动订阅 ”的优先级进行限流。举例说明:
案例1:某个客户端在创建自动订阅规则前,共有28个订阅,配置了自动订阅规则后,新增了5个 Topic Filter 的订阅。在客户端断开并再次上线后,按照自动订阅规则依次订阅新增的 Topic Filter,当订阅到第3个 Topic Filter 后,超出了30个的单客户端限额,第3 - 5个自动订阅规则内的 Topic Filter 订阅没有生效,在客户端详情页可以查看订阅失败事件及原因,详见查询客户端事件
案例2:某个在线的客户端当前已有20个订阅,新增了自动订阅规则内的10个 Topic Filter 的订阅,此时仍然在30个的限额内,正常订阅。之后该客户端新上线业务,新增了1个 Topic Filter 订阅,此时刚好超出限额,则新增的订阅返回失败,同时在客户端详情页可以查看订阅失败事件及原因,详见查询客户端事件
案例3:某个客户端的 Clean Session = false,该客户端已有30个订阅。后续新增了一个自动订阅规则,包含10个 Topic Filter,当客户端在 session 过期时间前再次上线后,首先恢复历史订阅,对于和历史订阅 Topic Filter 一致的自动订阅直接覆盖。之后依次订阅新增的自动订阅规则内的 Topic Filter,但是新增的 Topic Filter 均超出限额,因此超限部分的订阅失败,在客户端详情页可以查看订阅失败事件及原因,详见查询客户端事件

前提条件

确保自动订阅规则适用的客户端有连接(CONNECT)集群,使用指定用户名订阅 和 对应主题的订阅(SUBSCRIBE)权限,否则自动订阅时会被权限策略拒绝,详见配置数据面授权

操作步骤

创建自动订阅规则

1. 登录 MQTT 控制台
2. 在左侧导航栏单击 资源管理 > 集群管理,选择好地域后,单击目标集群的“ID”,进入集群基本信息页面。
3. 选择自动订阅管理页签,单击 新建规则 创建自动订阅规则,根据要求填写如下字段:
​​参数项​​
​​必填​​
​​说明​​
​​示例值​​
规则名称
输入自动订阅规则名称,需符合命名规则:不能为空,3-64个字符,支持中文、字母、数字、“-”及“_”。
device_cmd_sub
规则描述
填写规则的备注和说明。
-
创建方式
-
策略生成器:可视化配置。
JSON:使用 JSON 语法进行配置,输入框会对 .json 的文件格式进行校验,适用于配置项较多的场景。
-
用户名
请填写单个用户名或单条表达式,支持使用通配符和策略变量,详见 表达式说明。 请确保当前用户名拥有对应数据面权限。
*
客户端 ID
填写单条资源表达式,支持使用通配符和策略变量,详见 表达式说明。请确保当前客户端拥有对应数据面权限。
*
订阅选项
最多添加 20 条订阅主题。
Topic Filter:自动订阅的目标 Topic Filter。
QoS:0/1/2。
No Local:客户端是否接收​​自身发布​​的消息。
Retain as Published:转发保留消息时​​是否保持其原始 Retain 标志。
Retain Handling:订阅建立时是否发送保留消息的情况。
"topicFilter": "home/#",
"qos": 0,
"noLocal": 0, "retainAsPublished": 1,
"retainHandling": 0
4. 单击 创建策略,完成规则的创建。
5. 创建规则完成后,默认规则为“未启用”的状态,在操作栏单击启用后,规则将生效。


管理自动订阅规则

1. 登录 MQTT 控制台
2. 在左侧导航栏单击 资源管理 > 集群管理,选择好地域后,单击目标集群的“ID”,进入集群基本信息页面。
3. 选择自动订阅管理页签,可以在操作栏对自动订阅规则进行管理。
操作
说明
编辑
单击操作列的 编辑,对已有规则进行编辑。
复制
单击操作列的 复制,可以在某条规则的基础上进行简单修改,创建出相似的规则。
删除
仅“未启用”状态下的规则支持删除。因此要删除某条规则时,务必先禁用某条规则后再进行删除。






帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈