CN114025016B - 一种数据转发方法、装置及存储介质 - Google Patents

一种数据转发方法、装置及存储介质 Download PDF

Info

Publication number
CN114025016B
CN114025016B CN202111210366.8A CN202111210366A CN114025016B CN 114025016 B CN114025016 B CN 114025016B CN 202111210366 A CN202111210366 A CN 202111210366A CN 114025016 B CN114025016 B CN 114025016B
Authority
CN
China
Prior art keywords
data
electronic device
transmission mode
identifier
data identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111210366.8A
Other languages
English (en)
Other versions
CN114025016A (zh
Inventor
霍龙社
曹云飞
徐治理
崔煜喆
刘腾飞
唐雄燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202111210366.8A priority Critical patent/CN114025016B/zh
Publication of CN114025016A publication Critical patent/CN114025016A/zh
Application granted granted Critical
Publication of CN114025016B publication Critical patent/CN114025016B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种数据转发方法、装置及存储介质,涉及通信技术领域,用于解决现有技术中数据转发过程复杂的问题。该方法应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;中继设备分别与第一电子设备和第二电子设备通过长连接传输模式建立通信连接。中继设备在接收第一电子设备通过长连接传输模式发送的数据消息后,由于数据消息包括目标数据和用于标识目标数据的目标数据标识,因此,中继设备可以读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。本申请提高了数据转发的效率。

Description

一种数据转发方法、装置及存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种数据转发方法、装置及存储介质。
背景技术
基于传输控制协议(transmission control protocol,TCP)的全双工通信协议(WebSocket),是一种点对点的双工协议,通常应用于互联网类应用中客户端与服务器之间的实时消息传递和数据传输,特别是服务器主动向客户端发送消息的应用场景。在传统的单体应用架构中,每个客户端都可以直接跟服务器建立点到点的WebSocket连接,
目前,在微服务架构中,出于安全性方面考虑,客户端通常不能与各个基于微服务架构的服务器直接交互,而是利用应用程序接口(application programming interface,API)网关作为中转,因此客户端与基于微服务架构的服务器之间不能直接建立点到点的WebSocket连接。
然而,这就使得在微服务架构下,客户端与基于微服务架构的服务器之间的双向实时通信需求无法通过WebSocket协议来实现,而只能使用客户端轮询、建立消息队列、或者混合使用连接技术等替代方案,增加了系统的资源开销和数据转发的复杂性,从而降低了用户体验。
发明内容
本申请提供一种数据转发方法、装置及存储介质,用于降低数据转发过程的复杂度。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种数据转发方法,数据转发方法应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;中继设备分别与第一电子设备和第二电子设备通过长连接传输模式建立通信连接;数据转发方法包括:在数据转发的过程中,通过接收第一电子设备通过长连接传输模式发送的数据消息,获取到目标数据和目标数据标识。然后,从预先建立好的数据标识与电子设备的对应关系中确定与目标数据标识对应的第二电子设备。最后通过长连接传输模式将目标数据发送给第二电子设备。
可选的,该方法还包括:接收电子设备通过长连接传输模式发送的订阅消息;电子设备包括第一电子设备或者第二电子设备;订阅消息包括数据标识;订阅消息用于请求获取与数据标识对应的数据;建立数据标识与电子设备的对应关系。
可选的,长连接传输模式为WebSocket连接传输模式。
第二方面,提供一种数据转发装置,数据转发装置应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;中继设备分别与第一电子设备和第二电子设备通过长连接传输模式建立通信连接;数据转发装置包括:接收单元和处理单元;接收单元,用于接收第一电子设备通过长连接传输模式发送的数据消息;数据消息包括目标数据和用于标识目标数据的目标数据标识;处理单元,用于读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。
可选的,接收单元,还用于接收电子设备通过长连接传输模式发送的订阅消息;电子设备包括第一电子设备或者第二电子设备;订阅消息包括数据标识;订阅消息用于请求获取与数据标识对应的数据;该装置还包括:建立单元;建立单元,用于建立数据标识与电子设备的对应关系。
可选的,接收单元,还用于接收电子设备的订阅取消消息;订阅取消消息包括数据标识;处理单元,还用于响应于接收单元接收的订阅取消消息,删除建立单元建立的数据标识与电子设备的对应关系。
可选的,长连接传输模式为WebSocket连接传输模式。
第三方面,提供一种数据转发装置,包括存储器和处理器;存储器用于存储计算机执行指令,处理器与存储器通过总线连接;当数据转发装置运行时,处理器执行存储器存储的计算机执行指令,以使数据转发装置执行第一方面所述的数据转发方法。
该数据转发装置可以是网络设备,也可以是网络设备中的一部分装置,例如网络设备中的芯片系统。该芯片系统用于支持网络设备实现第一方面及其任意一种可能的实现方式中所涉及的功能,例如,接收、确定、分流上述数据转发方法中所涉及的数据和/或信息。该芯片系统包括芯片,也可以包括其他分立器件或电路结构。
第四方面,提供一种计算机可读存储介质,计算机可读存储介质包括计算机执行指令,当计算机执行指令在数据转发装置上运行时,使得该数据转发装置执行第一方面所述的数据转发方法。
第五方面,还提供一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机指令在数据转发装置上运行时,使得数据转发装置执行如上述第一方面所述的数据转发方法。
需要说明的是,上述计算机指令可以全部或者部分存储在第一计算机可读存储介质上。其中,第一计算机可读存储介质可以与数据转发装置的处理器封装在一起的,也可以与数据转发装置的处理器单独封装,本申请实施例对此不作限定。
本申请中第二方面、第三方面、第四方面以及第五方面的描述,可以参考第一方面的详细描述;并且,第二方面、第三方面、第四方面以及第五方面的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
在本申请实施例中,上述数据转发装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
本申请提供的技术方案至少带来以下有益效果:
基于上述任一方面,本申请提出一种数据转发方法,应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;中继设备分别与第一电子设备和第二电子设备通过长连接传输模式建立通信连接。中继设备在接收第一电子设备通过长连接传输模式发送的数据消息后,由于数据消息包括目标数据和用于标识目标数据的目标数据标识,因此,中继设备可以读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。这样一来,中继设备可以在接收到目标数据后,可以直接向有需求的第二电子设备发送目标数据,提高了数据转发的效率,降低了数据转发过程的复杂度,从而减少了系统的资源开销。
附图说明
图1为本申请实施例提供的数据转发系统的结构示意图;
图2为本申请实施例提供的通信装置的一种硬件结构示意图;
图3为本申请实施例提供的通信装置的又一种硬件结构示意图;
图4为本申请实施例提供的一种数据转发方法的流程示意图;
图5为本申请实施例提供的又一种数据转发方法的流程示意图;
图6为本申请实施例提供的又一种数据转发方法的流程示意图;
图7为本申请实施例提供的又一种数据转发方法的流程示意图;
图8为本申请实施例提供的又一种数据转发方法的流程示意图;
图9为本申请实施例提供的又一种数据转发方法的流程示意图;
图10为本申请实施例提供的又一种数据转发方法的流程示意图;
图11为本申请实施例提供的一种数据转发装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了便于清楚描述本申请实施例的技术方案,在本申请实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不是在对数量和执行次序进行限定。
如背景技术所描述,在微服务环境下,数据转发的过程较为复杂,增加了系统的资源开销,降低了用户体验。
针对上述问题,本申请实施例提供了一种数据转发方法,应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;中继设备分别与第一电子设备和第二电子设备通过长连接传输模式建立通信连接。中继设备在接收第一电子设备通过长连接传输模式发送的数据消息后,由于数据消息包括目标数据和用于标识目标数据的目标数据标识,因此,中继设备可以读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。这样一来,中继设备可以在接收到目标数据后,可以直接向有需求的第二电子设备发送目标数据,提高了数据转发的效率,降低了数据转发过程的复杂度,从而减少了系统的资源开销。
该数据转发方法适用于数据转发系统。图1示出了该数据转发系统的一种结构。如图1所示,该数据转发系统包括:第一电子设备110、第二电子设备120和中继设备130。其中,中继设备130分别与第一电子设备110和第二电子设备120通过长连接传输模式建立通信连接。
在实际应用中,中继设备可以连接多个第一电子设备或者第二电子设备;也可以是多个中继设备连接多个第一电子设备或者第二电子设备。图1以一个中继设备130连接多个第一电子设备和第二电子设备为例进行说明。
可选的,图1中的第一电子设备110和第二电子设备120可以是客户端或者服务器。
其中,客户端可以是指向用户提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(radio access network,RAN)与一个或多个核心网进行通信。无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,也可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据,例如,手机、平板电脑、笔记本电脑、上网本、个人数字助理(personal digital assistant,PDA)。
服务器中可以配置多个微服务器节点。配置了多个微服务器节点的服务器可以称为基于微服务器架构的服务器。基于微服务器架构的服务器中每个微服务器节点可以安装一种或多种业务的应用程序,业务请求可以交由安装了该业务请求对应的应用程序的微服务器节点进行处理,从而使得服务器可以同时处理多个业务。
服务器可以是服务器集群(由多个服务器组成)中的一个服务器,也可以是该服务器中的芯片,还可以是该服务器中的片上系统,还可以通过部署在物理机上的虚拟机(virtual machine,VM)实现,本申请实施例对此不作限定。图1中的中继设备130可以是应用程序接口(application programming interface,API)网关。在微服务架构下,API网关封装了系统内部架构,可以为每个客户端提供一个定制的API。API网关负责服务请求路由、组合及协议转换,客户端的有请求都首先经过API网关,然后由它将请求路由到合适的微服务,以实现诸如身份验证、监控、负载均衡、缓存、请求分片与管理、静态响应处理等功能。
可选的,中继设备130还可以是路由器、中继器等其他用于数据转发的中继设备。
长连接传输模式可以是WebSocket连接。WebSocket是一种利用单个TCP连接在客户端和服务器之间进行全双工数据交换的协议,通常应用于互联网类应用中客户端与服务器之间的实时消息传递和数据传输,特别是服务器主动向客户端发送消息的应用场景。
数据转发系统中的第一电子设备110、第二电子设备120和中继设备130的基本硬件结构类似,都包括图2或图3所示通信装置所包括的元件。下面以图2和图3所示的通信装置为例,介绍第一电子设备110、第二电子设备120和中继设备130的硬件结构。
如图2所示,为本申请实施例提供的通信装置的一种硬件结构示意图。该通信装置包括处理器21,存储器22、通信接口23、总线24。处理器21,存储器22以及通信接口23之间可以通过总线24连接。
处理器21是通信装置的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器21可以是一个通用中央处理单元(central processing unit,CPU),也可以是其他通用处理器等。其中,通用处理器可以是微处理器或者是任何常规的处理器等。
作为一种实施例,处理器21可以包括一个或多个CPU,例如图2中所示的CPU 0和CPU 1。
存储器22可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
一种可能的实现方式中,存储器22可以独立于处理器21存在,存储器22可以通过总线24与处理器21相连接,用于存储指令或者程序代码。处理器21调用并执行存储器22中存储的指令或程序代码时,能够实现本发明下述实施例提供的数据转发方法。
在本申请实施例中,对于第一电子设备110、第二电子设备120和中继设备130而言,存储器22中存储的软件程序不同,所以第一电子设备110、第二电子设备120和中继设备130实现的功能不同。关于各设备所执行的功能将结合下面的流程图进行描述。
另一种可能的实现方式中,存储器22也可以和处理器21集成在一起。
通信接口23,用于通信装置与其他设备通过通信网络连接,所述通信网络可以是以太网,无线接入网,无线局域网(wireless local area networks,WLAN)等。通信接口23可以包括用于接收数据的接收单元,以及用于发送数据的发送单元。
总线24,可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component interconnect,PCI)总线或扩展工业标准体系结构(extended industry standard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
图3示出了本发明实施例中通信装置的另一种硬件结构。如图3所示,通信装置可以包括处理器31以及通信接口32。处理器31与通信接口32耦合。
处理器31的功能可以参考上述处理器21的描述。此外,处理器31还具备存储功能,可以起上述存储器22的功能。
通信接口32用于为处理器31提供数据。该通信接口32可以是通信装置的内部接口,也可以是通信装置对外的接口(相当于通信接口23)。
需要指出的是,图2(或图3)中示出的结构并不构成对通信装置的限定,除图2(或图3)所示部件之外,该通信装置可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合附图对本申请实施例提供的数据转发方法进行详细介绍。
本申请实施例提供的数据转发方法包括:中继设备创建得到数据标识与电子设备的对应关系的流程(简称为“对应关系建立流程”)和中继设备通过长连接传输模式将第一电子设备的目标数据向第二电子设备转发的流程(简称为“数据转发流程”)。
下面先对“对应关系建立流程”进行描述。
如图4所示,“对应关系建立流程”包括:S401-S402。
S401、中继设备接收电子设备通过长连接传输模式发送的订阅消息。
其中,电子设备包括第一电子设备或者第二电子设备;订阅消息包括数据标识;订阅消息用于请求获取与数据标识对应的数据。
应理解,中继设备在接收电子设备通过长连接传输模式发送的订阅消息之前,需要与电子设备建立长连接。
具体的,中继设备与电子设备建立长连接时,可以接收电子设备发送的长连接建立请求。
可选的,中继设备接收电子设备发送的长连接建立请求时,可以在指定端口监听电子设备的长连接建立请求。其中,指定端口可以是API端口,或者WebSocket端口。
可选的,中继设备可以实时的监听电子设备的长连接建立请求,也可以周期性的监听电子设备的长连接建立请求。
在接收到电子设备发送的长连接建立请求后,中继设备可以建立与电子设备之间的长连接。
然后,中继设备可以接收电子设备通过长连接传输模式发送的订阅消息。
其中,电子设备数量可以是多个,具体包括第一电子设备或者第二电子设备。订阅消息包括数据标识。订阅消息用于请求获取与数据标识对应的数据。
可选的,长连接的传输模式可以为WebSocket连接。
可选的,订阅消息的格式可以为JSON格式。
可选的,数据标识可以是一个或者多个,包括数据类型、数据关键词等数据主题信息。
可选的,中继设备与电子设备之间的长连接建立成功后,中继设备可以向电子设备发送响应消息。电子设备响应于响应消息,可以向中继设备发送订阅消息。
可选的,中继设备与电子设备之间的长连接建立成功后,中继设备还可以创建与长连接对应的连接对象,并在一个独立线程中运行该连接对象。其中,上述连接对象用于处理与长连接相关的一切事宜。
当长连接的传输模式为WebSocket连接时,中继设备与电子设备之间的WebSocket连接建立成功后,中继设备向电子设备发送响应消息,创建并运行与WebSocket连接对应的WebSocket连接对象。后续,电子设备响应于上述响应消息,可以通过WebSocket连接向中继设备发送订阅消息msg。其中,msg为JSON格式,指示类型的字段“type”的值为“订阅(subscribe)”,指示数据标识的字段“topic”的值为“数据标识”:
示例性的,预设中继设备为API网关ⅰ,在API网关ⅰ建立了与客户端A之间的WebSocket连接a后,向客户端A发送响应消息,,创建并运行与WebSocket连接a对应的WebSocket连接对象ws_a。当客户端A想要获取和“运动(sport)”相关的数据时,API网关ⅰ可以接收到客户端A通过WebSocket连接a发送的订阅消息msgⅠ,订阅消息msgⅠ的格式如下,其中,数据标识为数据关键词“sport”:
S402、中继设备建立数据标识与电子设备的对应关系。
具体的,在接收到电子设备的订阅消息后,中继设备获取订阅消息中的数据标识。然后,中继设备创建数据标识与电子设备的对应关系。
可选的,当电子设备的数量是多个时,中继设备在获取到多个电子设备通过长连接的传输模式发送的包括数据标识的订阅消息中后,可以创建数据标识与每个电子设备的对应关系。
可选的,数据标识与电子设备的对应关系可以是数据标识与电子设备的设备标识的对应关系,也可以是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系。
当数据标识与电子设备的对应关系是数据标识与电子设备的设备标识的对应关系时,中继设备可以获取到电子设备的设备标识。
可选的,设备标识可以为通用唯一识别码(universally unique identifier,UUID)、国际移动设备识别码(international mobile equipment identity,IMEI)、用户识别码(subscriber identity module identifier,SIM ID)、或者介质访问控制(mediaaccess control,MAC)地址等。
当数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系时,中继设备可以获取到长连接的连接对象。
当长连接的传输模式为WebSocket连接,数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系时,中继设备建立数据标识与电子设备的对应关系可以为一个键值对集合类型的全局共享变量topic_connections。其数据结构如表1所示,其中每一个键值对中,键为订阅消息中指示数据标识的字段“topic”,值为连接列表(connections_list),connections_list包括连接中继设备与订阅了数据标识的电子设备的WebSocket连接的WebSocket连接对象。
表1topic connections
当中继设备通过某个WebSocket连接接收到一个“type”为“subscribe”的JSON格式的订阅消息msg时,从msg中获取“topic”指示的数据标识:self.topic=msg.get(’topic’),然后在topic_connections中查找指示该数据标识的“topic”的键值对,接着,在对应的connections_list中添加本WebSocket连接对象:connections.append(self)。
可选的,当中继设备没有在topic_connections中查找到指示该数据标识的“topic”的键值对时,可以在topic_connections中添加一个键值对<topic,空connections_list>。然后,中继设备在topic_connections中重新查找指示该数据标识的“topic”的键值对。
示例性的,预设中继设备为API网关ⅰ。如图5中(1)所示,API网关ⅰ创建了数据标识与电子设备的对应关系topic_connections510。其中,键511指示数据标识为关键词“sport”,值512为包括订阅了与“sport”相关的数据的客户端B对应的WebSocket连接对象ws_b513和服务器C对应的WebSocket连接对象ws_c514的connections_list。
API网关ⅰ通过WebSocket连接a接收到客户端A的订阅消息msgⅠ:
由于msgⅠ中“type”为“subscribe”,API网关ⅰ可以从msgⅠ中获取“topic”指示的数据标识:self.topic=sport,然后在topic_connections510中查找到指示“sport”的键511和对应的值512。
如图5中(2)所示,API网关ⅰ在值512中的connections_list添加新的WebSocket连接对象521:connections.append(ws_a),得到包括ws_a的connections_list522和topic_connections520。
又一示例性的,预设中继设备为API网关ⅰ。如图6中(1)所示,API网关ⅰ创建了数据标识与电子设备的对应关系topic_connections610。其中,键611指示数据标识为关键词“sport”,值612为包括订阅了与“sport”相关的数据的客户端B对应的WebSocket连接对象ws_b613和服务器C对应的WebSocket连接对象ws_c614的connections_list。
API网关ⅰ通过WebSocket连接d接收到客户端D用于订阅与“游戏(game)”相关的数据的订阅消息msgⅡ:
如图6中(2)所示,由于msgⅡ中“type”为“subscribe”,API网关ⅰ可以从msgⅡ中获取“topic”指示的数据标识:self.topic=game,然后在topic_connections610中没有查找到指示“game”的键。此时,API网关ⅰ在topic_connections610中添加一个键值对<game,空connections_list>,得到包括指示“game”的键621和指示空connections_list的值622的topic_connections620。API网关ⅰ在topic_connections620中重新查找到指示“游戏”的键621。
如图6中(3)所示,API网关ⅰ在值622中的空connections_list中添加新的WebSocket连接对象631:connections.append(ws_d),得到包括ws_d的connections_list的值632和topic_connections630。
接下来对“数据转发流程”进行描述。
采用上述方法建立好对应关系之后,中继设备可以通过长连接传输模式向第二电子设备转发第一电子设备发送的目标数据。如图7所示,包括S701-S702。
S701、中继设备接收第一电子设备通过长连接传输模式发送的数据消息。
其中,数据消息包括目标数据和用于标识目标数据的目标数据标识。
具体的,在建立与第一电子设备之间的长连接后,中继设备可以接收第一电子设备通过长连接传输模式发送的数据消息,获取到数据消息中包括的目标数据和用于标识目标数据的目标数据标识。
可选的,长连接的传输模式可以为WebSocket连接。
可选的,数据消息的格式可以为JSON格式。
可选的,目标数据可以是声音、图像等模拟数据,也可以是符号、文字等数字数据。
可选的,目标数据标识可以是一个或者多个,包括目标数据类型、目标数据关键词等目标数据主题信息。
可选的,中继设备与电子设备之间的长连接建立成功后,中继设备可以向电子设备发送响应消息。第一电子设备响应于响应消息,可以向中继设备发送数据消息。
当长连接的传输模式为WebSocket连接时,中继设备与第一电子设备之间的WebSocket连接建立成功后,中继设备向第一电子设备发送响应消息。第一电子设备响应于上述响应消息,可以通过WebSocket连接向中继设备发送数据消息msg。其中,数据消息为JSON格式,指示类型的字段“type”的值为“数据(data)”,指示目标数据标识的字段“topic”的值为“目标数据标识”,还有用于承载目标数据的字段。
可选的,用于承载目标数据的字段可以是指示消息内容的字段“content”或者其他字段。
当用于承载目标数据的字段是指示消息内容的字段“content”时,msg包括:
示例性的,预设中继设备为API网关ⅰ,在API网关ⅰ建立了与服务器X之间的WebSocket连接x后,向服务器X发送响应消息。API网关ⅰ可以接收到服务器X通过WebSocket连接x发送的数据消息ⅱ,数据消息ⅱ的格式如下,其中,目标数据标识为数据关键词“sport”和“game”,目标数据为一段视频“video”:
S702、中继设备读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。
具体的,在中继设备接收到第一电子设备的数据消息后,获取数据消息中的目标数据标识。接着,中继设备读取预先建立好的数据标识与电子设备的对应关系,根据目标数据标识确定对应的电子设备为第二电子设备。
可选的,数据标识与电子设备的对应关系可以是数据标识与电子设备的设备标识的对应关系,也可以是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系。
当数据标识与电子设备的对应关系是数据标识与电子设备的设备标识的对应关系时,中继设备可以根据目标数据标识确定第二电子设备的设备标识。
当数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系时,中继设备可以根据目标数据标识确定第二电子设备对应的目标长连接的连接对象。
然后,中继设备可以通过长连接传输模式向第二电子设备发送数据消息中的目标数据。
可选的,当第二电子设备为多个时,中继设备可以分别通过对应的长连接传输模式向每个第二电子设备发送数据消息中的目标数据。
当长连接的传输模式为WebSocket连接,数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系topic_connections时,中继设备接收到第一电子设备的JSON格式的数据消息msg后,从msg中获取“topic”指示的目标数据标识。然后,中继设备在topic_connections中查找指示目标数据标识的“topic”的键值对,找到对应的connections_list中的WebSocket连接对象。接着,中继设备调用上述WebSocket连接对象向第二电子设备发送接受到的目标数据:conn.send(msg)。
示例性的,预设中继设备为API网关ⅰ。API网关ⅰ预选创建的数据标识与电子设备的对应关系topic_connections如表2。其中,键分别指示数据标识为关键词“sport”和“game”,值为包括订阅了与“sport”相关的数据的客户端B对应的WebSocket连接对象ws_b和服务器C对应的WebSocket连接对象ws_c的connections_list,以及订阅了与“game”相关的数据的客户端D对应的WebSocket连接对象ws_d的connections_list。
表2topic_connections
API网关ⅰ接收到服务器X通过WebSocket连接x发送的数据消息msgⅠ,数据消息msgⅠ的格式如下,其中,目标数据标识为数据关键词“sport”和“game”,目标数据为一段视频“video”:
由于msgⅠ中“type”为“data”,API网关ⅰ可以从msgⅠ中获取“topic”指示的目标数据标识“sport”和“game”,然后在topic_connections中查找到分别指示“sport”和“game”的键值对,确定对应的WebSocket连接对象ws_b、ws_c和ws_d。接着,API网关ⅰ分别调用ws_b、ws_c和ws_d向客户端B、服务器C和客户端D发送目标数据:conn.send(video)。
在一种实施例中,结合图4,如图8所示,在中继设备建立好数据标识与电子设备的对应关系之后,该方法还包括:S801-S802。
S801、中继设备接收电子设备的订阅取消消息。
其中,订阅取消消息包括数据标识。
具体的,在建立数据标识与电子设备的对应关系之后,中继设备可以接收电子设备通过长连接传输模式发送包括数据标识的订阅取消消息。
其中,电子设备包括第一电子设备或者第二电子设备;订阅取消消息用于请求取消订阅与数据标识对应的数据。
可选的,长连接的传输模式可以为WebSocket连接。
可选的,数据标识可以是一个或者多个,包括数据类型、数据关键词等数据主题信息。
当长连接的传输模式为WebSocket连接时,中继设备与电子设备之间的WebSocket连接建立成功后,电子设备可以通过WebSocket连接向中继设备发送包括数据标识的订阅取消消息。
S802、中继设备响应于订阅取消消息,删除数据标识与电子设备的对应关系。
具体的,在接收到电子设备的订阅取消消息后,中继设备从订阅取消消息中获取到数据标识。然后,中继设备读取预先建立好的数据标识与电子设备的对应关系,找到上述数据标识与上述电子设备的对应关系,删除上述对应关系。
可选的,数据标识与电子设备的对应关系可以是数据标识与电子设备的设备标识的对应关系,也可以是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系。
当数据标识与电子设备的对应关系是数据标识与电子设备的设备标识的对应关系时,中继设备可以删除对应关系中的电子设备的设备标识。
当数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系时,中继设备可以删除对应关系中的长连接的连接对象。
当长连接的传输模式为WebSocket连接,数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系topic_connections时,中继设备可以接收到电子设备通过WebSocket连接发送的包括数据标识的订阅取消消息。然后,中继设备在topic_connections中查找指示上述数据标识的“topic”的键值对,找到对应的connections_list中的与本电子设备对应的WebSocket连接对象,删除上述WebSocket连接对象。
可选的,在中继设备在topic_connections中找到指示上述数据标识的“topic”的键值对后,可以从connections_list中获取到与本电子设备对应的WebSocket连接对象:connections.pop(connections.index(self))。
可选的,若删除connections_list中的与本电子设备对应的WebSocket连接对象后,connections_list为空列表,中继设备可以从topic_connections中删除指示上述数据标识的“topic”的键值对。
示例性的,预设中继设备为API网关ⅰ。如图9中(1)所示,API网关ⅰ预选创建的数据标识与电子设备的对应关系topic_connections910。其中,键911指示数据标识为关键词“sport”,键912指示数据标识为关键词“game”,值913为包括订阅了与“sport”相关的数据的客户端B对应的WebSocket连接对象ws_b914和服务器C对应的WebSocket连接对象ws_c915的connections_list,值916为包括订阅了与“game”相关的数据的客户端D对应的WebSocket连接对象ws_d917的connections_list。
API网关ⅰ通过WebSocket连接b接收到客户端B的包括数据标识“sport”订阅取消消息。API网关ⅰ在topic_connections910中查找到指示“sport”的键911。
如图9中(2)所示,API网关ⅰ在值913中的connections_list中找到客户端B对应的ws_b914:connections.pop(ws_b),并删除ws_b,得到connections_list921和topic_connections920。
又一示例性的,预设中继设备为API网关ⅰ。如图10中(1)所示,API网关ⅰ预选创建的数据标识与电子设备的对应关系topic_connections1010。其中,键1011指示数据标识为关键词“sport”,键1012指示数据标识为关键词“game”,值1013为包括订阅了与“sport”相关的数据的客户端B对应的WebSocket连接对象ws_b1014和服务器C对应的WebSocket连接对象ws_c1015的connections_list,值1016为包括订阅了与“game”相关的数据的客户端D对应的WebSocket连接对象ws_d1017的connections_list。
API网关ⅰ通过WebSocket连接d接收到客户端D的包括数据标识“game”订阅取消消息。API网关ⅰ在topic_connections1010中查找到指示“game”的键1012。
如图10中(2)所示,API网关ⅰ在值1016中的connections_list中找到客户端D对应的ws_d1017:connections.pop(ws_d),并删除ws_d,得到connections_list1021和topic_connections1020。
如图10中(3)所示,由于topic_connections1020中connections_list1021为空列表,API网关ⅰ从topic_connections1020中删除键值对<game,空connections_list>,得到topic_connections1030。
综上,本申请实施例中的数据转发方法,应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;中继设备分别与第一电子设备和第二电子设备通过长连接传输模式建立通信连接。中继设备在接收第一电子设备通过长连接传输模式发送的数据消息后,由于数据消息包括目标数据和用于标识目标数据的目标数据标识,因此,中继设备可以读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。这样一来,中继设备可以在接收到目标数据后,可以直接向有需求的第二电子设备发送目标数据,提高了数据转发的效率,降低了数据转发过程的复杂度,从而减少了系统的资源开销。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对中继设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。可选的,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
如图11所示,为本申请实施例提供的一种数据转发装置的结构示意图。该数据转发装置可以用于执行图4、图7或者图8所示的数据转发的方法。图11所示数据转发装置包括:接收单元1101、处理单元1102和建立单元1103。
接收单元1101,用于接收第一电子设备通过长连接传输模式发送的数据消息。例如,结合图7,接收单元1101用于执行S701。
处理单元1102,用于读取预先建立好的数据标识与电子设备的对应关系,将与目标数据标识对应的电子设备确定为第二电子设备,并通过长连接传输模式向第二电子设备发送目标数据。例如,结合图7,处理单元1102用于执行S702。
可选的,接收单元1101,还用于接收电子设备通过长连接传输模式发送的订阅消息。例如,结合图4,接收单元1101还用于执行S401。
建立单元1103,用于建立数据标识与电子设备的对应关系。例如,结合图4,建立单元1103用于执行S402。
可选的,接收单元1101,还用于接收电子设备的订阅取消消息。例如,结合图8,接收单元1101还用于执行S801。
处理单元1102,还用于响应于接收单元1101接收的订阅取消消息,删除建立单元1103建立的数据标识与电子设备的对应关系。例如,结合图8,处理单元1102还用于执行S802。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质包括计算机执行指令,当计算机执行指令在数据转发装置上运行时,使得数据转发装置执行如上述实施例提供的数据转发方法。
本申请实施例还提供一种计算机程序,该计算机程序可直接加载到存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述实施例提供的数据转发方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机可读存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种数据转发方法,其特征在于,所述数据转发方法应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;所述中继设备分别与所述第一电子设备和所述第二电子设备通过长连接传输模式建立通信连接;所述数据转发方法包括:
接收所述第一电子设备通过所述长连接传输模式发送的数据消息;所述数据消息包括目标数据和用于标识所述目标数据的目标数据标识;
读取预先建立好的数据标识与电子设备的对应关系,将与所述目标数据标识对应的电子设备确定为所述第二电子设备,并通过所述长连接传输模式向所述第二电子设备发送所述目标数据;
接收电子设备通过所述长连接传输模式发送的订阅消息;所述电子设备包括所述第一电子设备或者所述第二电子设备;所述订阅消息包括数据标识;所述订阅消息用于请求获取与所述数据标识对应的数据;
建立所述数据标识与所述电子设备的对应关系;
所述中继设备为API网关,在API网关建立与客户端之间的WebSocket连接后,向所述客户端发送响应消息,创建并运行与WebSocket连接对应的WebSocket连接对象;当所述客户端想要获取相关的数据时,API网关通过WebSocket连接接收到客户端的订阅消息;当长连接的传输模式为WebSocket连接,数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系时,API网关创建数据标识与电子设备的对应关系,其中,键指示数据标识为关键词,值为包括了订阅了与关键词相关的数据的客户端对应的WebSocket连接对象和服务器对应的WebSocket连接对象。
2.根据权利要求1所述的数据转发方法,其特征在于,还包括:
接收所述电子设备的订阅取消消息;所述订阅取消消息包括所述数据标识;
响应于所述订阅取消消息,删除所述数据标识与所述电子设备的对应关系。
3.根据权利要求1-2任一项所述的数据转发方法,其特征在于,所述长连接传输模式为WebSocket连接传输模式。
4.一种数据转发装置,其特征在于,所述数据转发装置应用于包括第一电子设备、第二电子设备和中继设备的数据转发系统;所述中继设备分别与所述第一电子设备和所述第二电子设备通过长连接传输模式建立通信连接;所述数据转发装置包括:接收单元、处理单元和建立单元;
所述接收单元,用于接收所述第一电子设备通过所述长连接传输模式发送的数据消息;所述数据消息包括目标数据和用于标识所述目标数据的目标数据标识;
所述处理单元,用于读取预先建立好的数据标识与电子设备的对应关系,将与所述目标数据标识对应的电子设备确定为所述第二电子设备,并通过所述长连接传输模式向所述第二电子设备发送所述目标数据;
所述接收单元,还用于接收电子设备通过所述长连接传输模式发送的订阅消息;所述电子设备包括所述第一电子设备或者所述第二电子设备;所述订阅消息包括数据标识;所述订阅消息用于请求获取与所述数据标识对应的数据;
所述建立单元,用于建立所述数据标识与所述电子设备的对应关系;
所述中继设备为API网关,所述建立单元,还用于:
在API网关建立与客户端之间的WebSocket连接后,向所述客户端发送响应消息,创建并运行与WebSocket连接对应的WebSocket连接对象;当所述客户端想要获取相关的数据时,API网关通过WebSocket连接接收到客户端的订阅消息;当长连接的传输模式为WebSocket连接,数据标识与电子设备的对应关系是数据标识与连接电子设备与中继设备的长连接的连接对象的对应关系时,API网关创建数据标识与电子设备的对应关系,其中,键指示数据标识为关键词,值为包括了订阅了与关键词相关的数据的客户端对应的WebSocket连接对象和服务器对应的WebSocket连接对象。
5.根据权利要求4所述的数据转发装置,其特征在于,所述接收单元,还用于接收所述电子设备的订阅取消消息;所述订阅取消消息包括所述数据标识;
所述处理单元,还用于响应于所述接收单元接收的所述订阅取消消息,删除所述建立单元建立的所述数据标识与所述电子设备的对应关系。
6.根据权利要求4-5任一项所述的数据转发装置,其特征在于,所述长连接传输模式为WebSocket连接传输模式。
7.一种数据转发装置,其特征在于,包括存储器和处理器;所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过总线连接;当所述数据转发装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述数据转发装置执行如权利要求1-3任一项所述的数据转发方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机执行指令,当所述计算机执行指令在数据转发装置上运行时,使得所述数据转发装置执行如权利要求1-3任一项所述的数据转发方法。
CN202111210366.8A 2021-10-18 2021-10-18 一种数据转发方法、装置及存储介质 Active CN114025016B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111210366.8A CN114025016B (zh) 2021-10-18 2021-10-18 一种数据转发方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111210366.8A CN114025016B (zh) 2021-10-18 2021-10-18 一种数据转发方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN114025016A CN114025016A (zh) 2022-02-08
CN114025016B true CN114025016B (zh) 2024-03-15

Family

ID=80056523

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111210366.8A Active CN114025016B (zh) 2021-10-18 2021-10-18 一种数据转发方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN114025016B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015121342A1 (en) * 2014-02-13 2015-08-20 Koninklijke Kpn N.V. Requesting multiple chunks from a network node on the basis of a single request message
CN105577602A (zh) * 2014-10-08 2016-05-11 阿里巴巴集团控股有限公司 基于开放的应用程序编程接口的数据推送方法和装置
CN110300056A (zh) * 2019-06-28 2019-10-01 四川长虹电器股份有限公司 一种实时响应式api网关及其请求处理方法
CN110740131A (zh) * 2019-09-30 2020-01-31 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111934840A (zh) * 2020-06-29 2020-11-13 北京百度网讯科技有限公司 客户端和服务端的通信方法、网关、电子设备及存储介质
CN111970363A (zh) * 2020-08-17 2020-11-20 北京金山云网络技术有限公司 基于物联网的数据处理方法及装置
CN112202872A (zh) * 2020-09-28 2021-01-08 华云数据控股集团有限公司 一种数据转发方法、api网关及消息服务系统
CN112769837A (zh) * 2021-01-13 2021-05-07 北京洛塔信息技术有限公司 基于WebSocket的通信传输方法、装置、设备、系统及存储介质
CN113391979A (zh) * 2021-06-21 2021-09-14 中国农业银行股份有限公司 监控数据展示的处理方法、设备、系统及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560404B2 (en) * 2017-06-14 2020-02-11 Citrix Systems, Inc. Real-time cloud-based messaging system

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015121342A1 (en) * 2014-02-13 2015-08-20 Koninklijke Kpn N.V. Requesting multiple chunks from a network node on the basis of a single request message
CN105577602A (zh) * 2014-10-08 2016-05-11 阿里巴巴集团控股有限公司 基于开放的应用程序编程接口的数据推送方法和装置
CN110300056A (zh) * 2019-06-28 2019-10-01 四川长虹电器股份有限公司 一种实时响应式api网关及其请求处理方法
CN110740131A (zh) * 2019-09-30 2020-01-31 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111934840A (zh) * 2020-06-29 2020-11-13 北京百度网讯科技有限公司 客户端和服务端的通信方法、网关、电子设备及存储介质
CN111970363A (zh) * 2020-08-17 2020-11-20 北京金山云网络技术有限公司 基于物联网的数据处理方法及装置
CN112202872A (zh) * 2020-09-28 2021-01-08 华云数据控股集团有限公司 一种数据转发方法、api网关及消息服务系统
CN112769837A (zh) * 2021-01-13 2021-05-07 北京洛塔信息技术有限公司 基于WebSocket的通信传输方法、装置、设备、系统及存储介质
CN113391979A (zh) * 2021-06-21 2021-09-14 中国农业银行股份有限公司 监控数据展示的处理方法、设备、系统及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Adhitya Bhawiyuga ; Dany Primanita Kartikasari *
Eko Sakti Pramukantoro.A publish subscribe based middleware for enabling real time web access on constrained device.2017 9th International Conference on Information Technology and Electrical Engineering (ICITEE).2017,全文. *
基于事件驱动的高性能WebSocket服务器的设计与实现;曹文彬;谭新明;刘备;刘传文;;计算机应用与软件;20180115(第01期);全文 *

Also Published As

Publication number Publication date
CN114025016A (zh) 2022-02-08

Similar Documents

Publication Publication Date Title
EP3993347A1 (en) Method and device for application migration
JP6726426B2 (ja) 端末間のログイン不要方法及び装置
US8265050B2 (en) System and method for sharing a payload among mobile devices in a wireless network
CN109672708B (zh) 通信方法及装置、系统
CN102469124B (zh) 基于aog的移动互联网业务的实现方法、网关、代理及系统
US20180091581A1 (en) Method of switching download mode, control method thereof and control system thereof
JP2008525132A (ja) モバイルオンラインゲームシステム、及びモバイルゲーム端末間の通信方法
US10693785B2 (en) Method and system for forwarding data, virtual load balancer, and readable storage medium
KR20120059077A (ko) 다중 네트워크 환경에서의 피어-투-피어 접속 시스템 및 방법
JP6342509B2 (ja) 未知の番号のマーキング方法及び装置
CN108781217B (zh) 多媒体数据传输的方法、服务器和终端
CN112398845B (zh) 数据传输方法、数据传输装置、系统及电子设备
WO2023011151A1 (zh) 通信方法和装置
CN114827908A (zh) Vn组通信方法、装置、设备及存储介质
CN115669185A (zh) 数据传输方法、设备及存储介质
CN104754642B (zh) 一种服务查询方法、装置及系统和站点
CN114025016B (zh) 一种数据转发方法、装置及存储介质
CN108632355B (zh) 一种家电网络选路方法、控制终端、可读存储介质及设备
US10666492B1 (en) Method and apparatus of providing emergency communication services
KR101921275B1 (ko) 메신저에서의 파일 전송 시 기기 간 통신 기술을 활용하는 방법 및 시스템
CN113115400B (zh) 一种通信方法及装置
CN114040005A (zh) 一种数据传输方法、装置及存储介质
CN112929277B (zh) 一种报文处理方法及装置
JP6976199B2 (ja) 情報処理サーバおよび情報処理方法
CN115277802B (zh) 一种数据传输方法及网关

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant