一种消息通道中数据流转的方法及设备技术

技术编号:22446410 阅读:119 留言:0更新日期:2019-11-02 05:51
本申请的目的是提供一种消息通道中数据流转的方法及设备,通过根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息;根据所述连接的标识信息将消息投递至对应的消息队列主题中;根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,其中,所述消息的类型包括上行消息和下行消息;将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费。从而精准下发消息,定位终端与服务器之间的连接以及终端与连接的关系,同时减少数据传输压力以及使得消息通道内各模块充分解耦。

A method and equipment of data flow in message channel

【技术实现步骤摘要】
一种消息通道中数据流转的方法及设备
本申请涉及物联网领域,尤其涉及一种消息通道中数据流转的方法及设备。
技术介绍
随着物联网的不断普及以及全民健身时代的兴起,健身行业也进入到智能化时代。传统的经营方式不能有效实时监控接入的智能硬件状态、远程控制智能硬件做出差异化处理;同时各设备间无法进行信息共享。目前可通过构建智能硬件的消息通道来解决上述问题,在消息通道中,数据流转方式影响着消息通道系统的性能,而目前一些数据流转方式定位终端与服务器之间的连接不够准确、数据传输压力大、数据流转涉及的模块不能充分解耦。
技术实现思路
本申请的一个目的是提供一种消息通道中数据流转的方法及设备,解决现有技术中定位终端与服务器之间的连接不够准确、数据传输压力大、数据流转涉及的模块不能充分解耦的问题。根据本申请的一个方面,提供了一种消息通道中数据流转的方法,该方法包括:根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息;根据所述连接的标识信息将消息投递至对应的消息队列主题中;根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,其中,所述消息的类型包括上行消息和下行消息;将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费。进一步地,根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息之后,包括:根据所述连接的标识信息及所述终端的标识信息生成第一元组关系,当接收到终端连接成功通知后,在应用内存中存储所述第一元组关系,并在缓存数据库中存储第二元组关系,其中,所述第二元组关系包括具有连接关系的终端的标识信息和服务端的地址信息。进一步地,所述方法包括:通过所述消息通道中的连接模块将所述终端与TCP网关进行连接;通过所述消息通道中的消息包处理模块将通过所述TCP网关接收到的消息进行序列化或反序列,以及进行加解密处理;通过所述消息通道中的数据收集模块收集所述终端的心跳包、消息接收数以及进行流量统计和对通过所述TCP网关接收到的消息进行异步批量插入处理;通过所述消息通道中的业务聚合模块对接所有第三方进行路由分发数据。进一步地,根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,包括:当所述消息的类型为上行消息时,所述消息包处理模块订阅消息通道中所有模块生产的所有消息主题,从所有消息主题中取出消息进行反序列化、拆解包及解密处理;将所述消息的类型为下行消息时,所述消息包处理模块订阅该消息包处理模块的专属消息队列主题,从所述专属消息队列主题中取出消息进行加密、组包及序列化处理。进一步地,将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费,包括:当所述消息的类型为上行消息时,将进行反序列化、拆解包及解密处理后的消息投递至所述数据收集模块和所述业务聚合模块消费的消息主题中。进一步地,将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费,包括:当所述消息的类型为下行消息时,所述消息包处理模块根据终端的标识信息从缓存数据库中查找到对应的服务端的地址信息,并根据所述服务端的地址信息将进行加密、组包及序列化处理后的消息投递至所述连接模块中;所述连接模块根据所述连接元组关系查找对应的连接的标识信息;根据查找到的对应的连接的标识信息将所述消息推送至所述终端。进一步地,根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,包括:所述数据收集模块订阅该数据收集模块的专属消息主题,从所述专属消息主题中消费消息并根据所述消息的指令字进行处理业务逻辑。进一步地,根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,包括:所述业务聚合模块订阅该业务聚合模块的专属消息队列主题,从所述专属消息队列主题中取出消息进行处理;其中,将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费,包括:根据处理后的消息的应用程序的标识信息字段确定对应的路由信息;根据所述路由信息将所述处理后的消息路由至不同的第三方,以使所述第三方将所述处理后的消息推送至所述终端;所述业务聚合模块将接收到的所述处理后的消息按预设格式组装后投递至所述消息包处理模块中,由所述消息包处理模块进行消费并分发至所述数据收集模块中。根据本申请另一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述所述的方法。根据本申请再一个方面,还提供了一种消息通道中数据流转的设备,该设备包括:一个或多个处理器;以及存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行前述所述方法的操作。与现有技术相比,本申请通过根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息;根据所述连接的标识信息将消息投递至对应的消息队列主题中;根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,其中,所述消息的类型包括上行消息和下行消息;将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费。从而精准下发消息,定位终端与服务器之间的连接以及终端与连接的关系,同时减少数据传输压力以及使得消息通道内各模块充分解耦。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出根据本申请的一个方面提供的一种消息通道中数据流转的方法流程示意图;图2示出本申请一实施例中消息通道数据流转方式的示意图。附图中相同或相似的附图标记代表相同或相似的部件。具体实施方式下面结合附图对本申请作进一步详细描述。在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和SLB载波。图1示出根据本申请的一个方面提供的一种消息通道中数据流转的方法流程示意图,该方法包括:步骤S11~步骤S14,在步骤S11中,根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息;在此,终端与服务端之间建立连接时,首先终端建立的连接到达通用TCP网关,TCP网关根据接收到的连接通知生成该连接的标识信息(ClientID),从而后续的消息的精准下发都通过ClientID来定位本文档来自技高网...

【技术保护点】
1.一种消息通道中数据流转的方法,其中,所述方法包括:根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息;根据所述连接的标识信息将消息投递至对应的消息队列主题中;根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,其中,所述消息的类型包括上行消息和下行消息;将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费。

【技术特征摘要】
1.一种消息通道中数据流转的方法,其中,所述方法包括:根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息;根据所述连接的标识信息将消息投递至对应的消息队列主题中;根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,其中,所述消息的类型包括上行消息和下行消息;将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费。2.根据权利要求1所述的方法,其中,根据接收到的终端与服务端之间的连接通知生成所述连接的标识信息之后,包括:根据所述连接的标识信息及所述终端的标识信息生成第一元组关系,当接收到终端连接成功通知后,在应用内存中存储所述第一元组关系,并在缓存数据库中存储第二元组关系,其中,所述第二元组关系包括具有连接关系的终端的标识信息和服务端的地址信息。3.根据权利要求1所述的方法,其中,所述方法包括:通过所述消息通道中的连接模块将所述终端与TCP网关进行连接;通过所述消息通道中的消息包处理模块将通过所述TCP网关接收到的消息进行序列化或反序列,以及进行加解密处理;通过所述消息通道中的数据收集模块收集所述终端的心跳包、消息接收数以及进行流量统计和对通过所述TCP网关接收到的消息进行异步批量插入处理;通过所述消息通道中的业务聚合模块对接所有第三方进行路由分发数据。4.根据权利要求2或3所述的方法,其中,根据消息的类型订阅所述消息队列主题中的消息,将所述消息进行处理,包括:当所述消息的类型为上行消息时,所述消息包处理模块订阅消息通道中所有模块生产的所有消息主题,从所有消息主题中取出消息进行反序列化、拆解包及解密处理;将所述消息的类型为下行消息时,所述消息包处理模块订阅该消息包处理模块的专属消息队列主题,从所述专属消息队列主题中取出消息进行加密、组包及序列化处理。5.根据权利要求4所述的方法,其中,将处理后的消息按照所述消息类型对应的路由方式路由至消息通道中不同模块进行消费,包括:当所述消息的类型为上行消息时,将...

【专利技术属性】
技术研发人员:王浩曹剑孙强邢晓訸
申请(专利权)人:三体云智能科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1