[发明专利]物联网系统、MQTT消息传输的优化方法及装置有效
申请号: | 201811024738.6 | 申请日: | 2018-09-04 |
公开(公告)号: | CN109274730B | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 袁启勇;尹启房;周建 | 申请(专利权)人: | 上海联寓智能科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/58 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 200444 上海市宝*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 联网 系统 mqtt 消息 传输 优化 方法 装置 | ||
1.一种MQTT消息传输的优化方法,应用于MQTT代理服务器,其特征在于,包括:
如果监测到第一消息缓存环的缓存空间均被占用,则将接收的待缓存消息覆盖缓存至所述第一消息缓存环的首位;
提取处于所述第一消息缓存环中首位的第一缓存消息;
如果所述第一缓存消息为物联网客户端发送的订阅消息,则根据设定存储策略将所述订阅消息哈希存储到预设的订阅关系数据库中。
2.根据权利要求1所述的方法,其特征在于,所述根据设定存储策略将所述订阅消息哈希存储到预设的订阅关系数据库中,包括:
分析提取所述订阅消息的订阅主题,获取所述订阅主题的第一层级信息;
将所述第一层级信息作为所述订阅消息的关键信息;
在所述订阅关系数据库中查找与所述关键信息匹配的物联网客户端地址;
将所述订阅消息哈希存储到所述物联网客户端地址关联的数据桶中。
3.根据权利要求1所述的方法,其特征在于,还包括:
如果所述第一缓存消息为物联网客户端发送的发布消息,则根据所述订阅关系数据库,确定订阅所述发布消息的目标物联网客户端;
将所述发布消息发送至所述目标物联网客户端。
4.根据权利要求3所述的方法,其特征在于,所述根据所述订阅关系数据库,确定订阅所述发布消息的目标物联网客户端,包括:
分析所述发布消息,确定所述发布消息对应的订阅主题;
在所述订阅关系数据库中查找对应于所述订阅主题的目标物联网客户端地址;
获取所述目标物联网客户端地址对应的目标物联网客户端。
5.根据权利要求3所述的方法,其特征在于,在将所述发布消息发送至所述目标物联网客户端之前,还包括:
将所述发布消息及所述目标物联网客户端作为第二缓存消息;
根据第二消息缓存环的缓存状态缓存所述第二缓存消息。
6.根据权利要求5所述的方法,其特征在于,所述根据第二消息缓存环的缓存状态缓存所述第二缓存消息,包括:
如果所述缓存状态为缓存空间均被占用,则将所述第二缓存消息覆盖至所述第二消息缓存环的首位。
7.根据权利要求6所述的方法,其特征在于,还包括:
设定所述第一消息缓存环及所述第二消息缓存环处于循环检查状态,以实时接收待缓存的消息。
8.根据权利要求1所述的方法,其特征在于,还包括:
确定发送所述待缓存消息的物联网客户端是否为已标记的白名单客户端;
若是,则接收所述待缓存消息。
9.根据权利要求1所述的方法,其特征在于,还包括:
如果接收的待缓存消息为任一物联网客户端发送的订阅消息,则确定所述订阅消息相对所述物联网客户端的处理优先级;
如果所述处理优先级属于当前不处理范围,则接收到所述订阅消息对应的目标发布消息时,不再向所述物联网客户端发送所述目标发布消息。
10.一种MQTT消息传输的优化装置,其特征在于,包括:
覆盖缓存模块,用于如果监测到第一消息缓存环的缓存空间均被占用,则将接收的待缓存消息覆盖缓存至所述第一消息缓存环的首位;
提取模块,用于提取处于所述第一消息缓存环中首位的第一缓存消息;
存储模块,用于如果所述第一缓存消息为物联网客户端发送的订阅消息,则根据设定存储策略将所述订阅消息哈希存储到预设的订阅关系数据库中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海联寓智能科技有限公司,未经上海联寓智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811024738.6/1.html,转载请声明来源钻瓜专利网。