[发明专利]一种物联网关中MQTT主题的快速匹配方法及系统在审
申请号: | 202010419171.3 | 申请日: | 2020-05-18 |
公开(公告)号: | CN111651476A | 公开(公告)日: | 2020-09-11 |
发明(设计)人: | 张强强;魏志强;宋宪明;姜善宸;贾东宁;桂琳 | 申请(专利权)人: | 青岛海洋科学与技术国家实验室发展中心 |
主分类号: | G06F16/245 | 分类号: | G06F16/245;G06F16/22 |
代理公司: | 青岛联信知识产权代理事务所(普通合伙) 37227 | 代理人: | 潘晋祥 |
地址: | 266200 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 联网 关中 mqtt 主题 快速 匹配 方法 系统 | ||
1.一种物联网关中MQTT主题的快速匹配方法,其特征在于,所述物联网关中MQTT主题的快速匹配方法是一种基于分层主题树的方法,包括以下步骤:
S1:客户端创建分层主题树;
S2:客户端获得消息主题,根据主题层级分隔符“/”将消息主题分层并与分层主题树匹配。
2.根据权利要求1所述的一种物联网关中MQTT主题的快速匹配方法,其特征在于,S1进一步包括:
S10、客户端创建分层主题树第一层树根;
S11、客户端在向MQTT broker订阅一个MQTT主题时,根据主题层级分隔符“/”将订阅主题分割成若干层,然后分别将每层主题添加到对应层次的主题树中,若该主题此时不存在于相应层次的主题树当中,则自动创建,如果是最后一层主题,该主题节点还负责匹配结果的输出,需将主题回调函数同步保存到该节点。
3.根据权利要求1所述的一种物联网关中MQTT主题的快速匹配方法,其特征在于,S2进一步包括:
S20、客户端等待消息到达,当有消息到达时,解析消息获得消息主题,将消息主题分层并与分层主题树进行匹配,若匹配成功,则直接执行该订阅主题的主题回调函数,若匹配失败,则丢弃该消息;
S21、本次匹配完成,继续回到S20等待下一次匹配。
4.根据权利要求2所述的一种物联网关中MQTT主题的快速匹配方法,其特征在于,S11的具体步骤为:
S110、确定当前步骤的订阅主题和当前树根;
S111、查找订阅主题中的第一个“/”,若找到,则“/”之前的部分即为该层要添加的层主题,执行S1110;若没找到,则整个传入的订阅主题为该层要添加的层主题,执行S1111;
S1110、根据S110的树根在该树中查找要添加的层主题,若找到,则该层主题已经存在,不作操作;若没找到,则创建该层主题节点及该节点的子树根并加入当前树中,然后将“/”之后的主题作为新的要添加的层主题,并且和当前新建的子树根传入S111进行下一次添加;
S1111、该层主题是最后一层,在该树中查找该层主题,若找到,则属于重复订阅,更新该层主题节点的主题回调函数,结束;若没找到,则创建该层主题节点并将该主题回调函数加入该节点,结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海洋科学与技术国家实验室发展中心,未经青岛海洋科学与技术国家实验室发展中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010419171.3/1.html,转载请声明来源钻瓜专利网。