【技术实现步骤摘要】
基于MQTT的数据处理方法和装置
本说明书涉及计算机
,特别涉及一种基于MQTT的数据处理方法和装置。
技术介绍
现在的家庭环境中,智能设备的数量越来越多,设备向服务器上报的用户请求越来越多,尤其是在8点至10点(大量用户在家使用设备的时间段),会造成服务器压力过大的问题,服务器压力过大就会导致请求延时或者无反应的情况出现,即无法实现高并发需求。目前,申请号为CN201610225491.9的专利虽然达到了高并发需求,但是其用户请求的格式是固定不变的,不能有效兼容可变的参数。因此,目前亟待需要一种数据处理方法和装置能够既能实现高并发需求,又能实现兼容不同格式的用户请求。
技术实现思路
本说明书实施例提供了基于MQTT的数据处理方法和装置,既能实现高并发处理,又能实现兼容不同格式的用户请求。第一方面,本说明书实施例提供了基于MQTT的数据处理方法,包括:获取由MQTT服务器收集的多个用户主题;每一个所述用户主题均携带有与该用户主题相对应的用户请求;通过共享订阅的 ...
【技术保护点】
1.基于MQTT的数据处理方法,其特征在于,包括:/n获取由MQTT服务器收集的多个用户主题;每一个所述用户主题均携带有与该用户主题相对应的用户请求;/n通过共享订阅的方式获取每一个所述用户主题的用户请求;/n按照用户主题的类型对获取到的多个用户请求进行批量处理,得到多个请求集合;每一个所述请求集合均包括多个用户请求,每一个所述请求集合对应有唯一的用户主题的类型;/n根据得到的请求集合读取数据库,得到与每一个所述请求集合对应的读取结果集合;/n将得到的读取结果集合发送给所述MQTT服务器,以使发起请求的客户端根据订阅的用户主题从所述MQTT服务器获得读取结果。/n
【技术特征摘要】
1.基于MQTT的数据处理方法,其特征在于,包括:
获取由MQTT服务器收集的多个用户主题;每一个所述用户主题均携带有与该用户主题相对应的用户请求;
通过共享订阅的方式获取每一个所述用户主题的用户请求;
按照用户主题的类型对获取到的多个用户请求进行批量处理,得到多个请求集合;每一个所述请求集合均包括多个用户请求,每一个所述请求集合对应有唯一的用户主题的类型;
根据得到的请求集合读取数据库,得到与每一个所述请求集合对应的读取结果集合;
将得到的读取结果集合发送给所述MQTT服务器,以使发起请求的客户端根据订阅的用户主题从所述MQTT服务器获得读取结果。
2.根据权利要求1所述的方法,其特征在于,所述按照用户主题的类型对获取到的多个用户请求进行批量处理,得到多个请求集合,包括:
对获取到的多个用户请求以队列的方式进行缓存,得到缓存队列;
按照用户主题的类型对缓存后的队列进行分类,得到多个子队列;每一个所述子队列对应有唯一的用户主题的类型;
遍历每一个所述子队列,如果该子队列中的用户请求的数量达到预设的数量阈值,则将该子队列封装为一个请求集合。
3.根据权利要求1所述的方法,其特征在于,所述按照用户主题的类型对获取到的多个用户请求进行批量处理,得到多个请求集合,包括:
对获取到的多个用户请求以队列的方式进行缓存,得到缓存队列;
按照用户主题的类型对缓存后的队列进行分类,得到多个子队列;每一个所述子队列对应有唯一的用户主题的类型;
遍历每一个所述子队列,如果该子队列的缓存时间达到预设的时长阈值,则将该子队列封装为一个请求集合。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述将得到的读取结果集合发送给所述MQTT服务器,包括:
将得到的读取结果集合进行拆分,得到多个读取结果;每一个所述用户请求均对应有一个读取结果;
将得到的多个读取结果以多线程并行的方式发送给所述MQTT服务器。
5.基于MQTT的数据处理装置,其特征在于,包括:
第一获取模块,用于获取由MQTT服务器收集的多个用户主题;每一个所述用户主题均携带有与该用户主题相对应的用户请求;
第二获取...
【专利技术属性】
技术研发人员:杨培海,陈良,
申请(专利权)人:四川虹美智能科技有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。