一种应用集群部署中TCP下行消息处理方法、设备及介质与流程

文档序号:37242357发布日期:2024-03-06 17:11阅读:59来源:国知局
一种应用集群部署中TCP下行消息处理方法、设备及介质与流程

本申请涉及网络通信,尤其涉及一种应用集群部署中tcp下行消息处理方法、设备及介质。


背景技术:

1、海量设备以tcp/ip协议接入物联网平台时,单个服务节点难以管理大量连接,需要部署多个服务节点。目前市面上还没有出现成熟可用的tcp集群框架,需要用户结合使用多种技术,自行搭建tcp通信集群架构,处理设备上下行消息。

2、对于上行消息,如果没有特殊要求,将单节点扩展成多节点,再增加一个负载均衡器即可正常接收消息。对于下行消息,若想数据下发成功,根据tcp协议面向连接传输和一对一通信的特性,需要先找到设备接入的tcp服务节点及使用的连接再进行数据下发。

3、tcp服务集群部署情况在下行消息时难以发送到指定客户端,因此,大量设备终端接入不同的服务节点时,如何能够快速找到与指定设备的连接进行数据下发成为亟待解决的技术问题。


技术实现思路

1、本申请实施例提供了一种应用集群部署中tcp下行消息处理方法、设备及介质,用以解决如下技术问题:大量设备终端接入不同的服务节点时,如何能够快速找到与指定设备的连接进行数据下发。

2、第一方面,本申请实施例提供了一种应用集群部署中tcp下行消息处理方法,方法包括:待通信终端与tcp服务建立连接,并向tcp服务发送注册报文;其中,注册报文包括设备唯一识别编号;tcp服务基于注册报文,对待通信终端进行缓存注册,并将设备列表中待通信终端的状态更新为在线状态;在tcp服务需要向待通信终端下发下行消息的情况下,基于下行消息处理规范构建下行消息,并基于设备唯一识别编号将下行消息下发到待通信终端。

3、在本申请的一种实现方式中,tcp服务基于注册报文,对待通信终端进行缓存注册,具体包括:解析注册报文,以获取设备唯一识别编号;确定tcp服务的内存缓存map中是否存在设备唯一识别编号;在tcp服务的内存缓存map中不存在设备唯一识别编号的情况下,添加待通信终端的连接映射关系,以完成对待通信终端的缓存注册。

4、在本申请的一种实现方式中,添加待通信终端的连接映射关系,具体包括:在map中缓存设备唯一识别编号与设备的连接映射关系;在tcp服务使用的redis内存数据库中缓存设备唯一设备编号与tcp服务唯一识别编号的映射关系。

5、在本申请的一种实现方式中,在基于下行消息处理规范构建下行消息之前,方法还包括:在设备列表中确定待通信终端,并触发下发下行消息事件;检测待通信终端的设备状态是否为在线状态;在设备状态为离线状态的情况下,结束下发下行消息程序,并进行告警。

6、在本申请的一种实现方式中,基于设备唯一识别编号将下行消息下发到待通信终端,具体包括:基于设备唯一识别编号,查询redis内存数据库,以确定设备接入的tcp服务的tcp服务唯一识别编号;基于tcp服务唯一识别编号与下行消息,生成传递消息,并将传递消息发布到tcp服务使用的kafka中;订阅kafka中传递消息主题,以将下行消息发送到待通信终端。

7、在本申请的一种实现方式中,订阅kafka中传递消息主题,以将下行消息发送到待通信终端,具体包括:读取kafka中的传递消息,并阻塞读取下一个传递消息;解析传递消息,以确定传递消息中的tcp服务唯一识别编号,并确定tcp服务唯一识别编号是否为当前tcp服务的识别编号;在确定tcp服务唯一识别编号为当前tcp服务的识别编号的情况下,在map中获取与设备的连接映射关系,并基于连接映射关系,获取所述设备与所述tcp服务的连接,以将传递消息中的下行消息发送到待通信终端。

8、在本申请的一种实现方式中,方法还包括:在确定tcp服务唯一识别编号不是当前tcp服务的识别编号的情况下,不做任务处理;读取kafka中的下一个传递消息,并阻塞读取后一个传递消息。

9、在本申请的一种实现方式中,方法还包括:在tcp服务的内存缓存map中已存在设备唯一识别编号的情况下,返回已注册通知。

10、第二方面,本申请实施例还提供了一种应用集群部署中tcp下行消息处理设备,设备包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:待通信终端与tcp服务建立连接,并向tcp服务发送注册报文;其中,注册报文包括设备唯一识别编号;tcp服务基于注册报文,对待通信终端进行缓存注册,并将设备列表中待通信终端的状态更新为在线状态;在tcp服务需要向待通信终端下发下行消息的情况下,基于下行消息处理规范构建下行消息,并基于设备唯一识别编号将下行消息下发到待通信终端。

11、第三方面,本申请实施例还提供了一种应用集群部署中tcp下行消息处理的非易失性计算机存储介质,存储有计算机可执行指令,计算机可执行指令设置为:待通信终端与tcp服务建立连接,并向tcp服务发送注册报文;其中,注册报文包括设备唯一识别编号;tcp服务基于注册报文,对待通信终端进行缓存注册,并将设备列表中待通信终端的状态更新为在线状态;在tcp服务需要向待通信终端下发下行消息的情况下,基于下行消息处理规范构建下行消息,并基于设备唯一识别编号将下行消息下发到待通信终端。

12、本申请实施例提供的一种应用集群部署中tcp下行消息处理方法、设备及介质,通过在redis内存数据库和map中对待通信终端进行缓存注册,并利用kafka消息中间件进行下发消息,解决了tcp服务集群部署情况在下行消息难以发送到指定客户端的问题,使得大量设备终端在接入不同的服务节点时,也能够快速找到与指定设备的连接进行数据下发,保证下行消息下发成功,提高下行消息的传输效率。



技术特征:

1.一种应用集群部署中tcp下行消息处理方法,其特征在于,所述方法包括:

2.根据权利要求1所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,所述tcp服务基于所述注册报文,对所述待通信终端进行缓存注册,具体包括:

3.根据权利要求2所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,添加所述待通信终端的连接映射关系,具体包括:

4.根据权利要求3所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,在基于下行消息处理规范构建下行消息之前,所述方法还包括:

5.根据权利要求3所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,基于所述设备唯一识别编号将所述下行消息下发到所述待通信终端,具体包括:

6.根据权利要求5所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,订阅所述kafka中传递消息主题,以将所述下行消息发送到所述待通信终端,具体包括:

7.根据权利要求6所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,所述方法还包括:

8.根据权利要求6所述的一种应用集群部署中tcp下行消息处理方法,其特征在于,所述方法还包括:

9.一种应用集群部署中tcp下行消息处理设备,其特征在于,所述设备包括:

10.一种应用集群部署中tcp下行消息处理的非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:


技术总结
本申请公开了一种应用集群部署中TCP下行消息处理方法、设备及介质,属于网络通信技术领域。方法包括:待通信终端与TCP服务建立连接,并向TCP服务发送注册报文;其中,注册报文包括设备唯一识别编号;TCP服务基于注册报文,对待通信终端进行缓存注册,并将设备列表中待通信终端的状态更新为在线状态;在TCP服务需要向待通信终端下发下行消息的情况下,基于下行消息处理规范构建下行消息,并基于设备唯一识别编号将下行消息下发到待通信终端。本申请通过上述方法,使得大量设备终端在接入不同的服务节点时,也能够快速找到与指定设备的连接进行数据下发,保证下行消息下发成功,提高下行消息的传输效率。

技术研发人员:王明会,王腾江
受保护的技术使用者:浪潮通用软件有限公司
技术研发日:
技术公布日:2024/3/5
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1