掌桥专利:专业的专利平台
掌桥专利
首页

数据传输方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 11:19:16


数据传输方法、装置、电子设备及存储介质

技术领域

本公开涉及通信技术领域,尤其涉及一种数据传输方法、装置、电子设备及存储介质。

背景技术

随着互联网技术的发展,出现个各种各样的互联网产品。在互联网产品更新换代的发布过程中,为验证产品新特性的性能,通常会通过灰度发布的方式,使一部分用户继续使用产品原来的特性,一部分用户试用产品的新特性。在试用达预期效果后,再逐步扩大产品新特性的使用范围,以保证产品使用的稳定性。传统灰度发布中的数据传输方式通常是,在一个请求中对灰度传输规则进行标记,使得各个服务节点根据请求中的具体标记传输对应的服务实例。

然而,同一请求一般会同时参与多个灰度规则,当一个请求命中多组灰度规则时,请求中可能需要传递较多的灰度规则信息,如此,传统数据传输方式往往会使请求的载荷变大,出现数据传输效率低下的现象。

发明内容

本公开提供一种数据传输方法、装置、电子设备及存储介质,以至少解决相关技术中数据传输效率低下的问题。本公开的技术方案如下:

根据本公开实施例的第一方面,提供一种数据传输方法,包括:

接收数据传输请求,并解析所述数据传输请求,得到数据请求标记序列;其中,所述数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;所述数据请求标记为第一标记时表示命中,否则表示未命中;

获取目标服务节点中的目标服务标记序列;其中,所述目标服务标记序列中的每一目标服务标记用于表示是否命中所述预设数据传输规则序列中的数据传输规则;所述目标服务标记为第一标记时表示命中,否则表示未命中;所述目标服务节点为接收所述数据传输请求的服务节点;

对所述数据请求标记序列与所述目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当所述相同位置处的标记均为第一标记时,将所述匹配标记序列中的标记确定为第二标记;

检测所述匹配标记序列中的标记,当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例。

在一示例性实施例中,所述接收数据传输请求之前包括生成所述数据传输请求,所述生成所述数据传输请求,包括:

获取初始数据传输请求;其中,所述初始数据传输请求为调用服务实例的请求;

根据所述初始数据传输请求对所述预设数据传输规则序列中的数据传输规则的命中情况,生成所述数据请求标记序列;

将所述数据请求标记序列添加至所述初始数据传输请求中,得到所述数据传输请求。

在一示例性实施例中,所述根据所述初始数据传输请求对所述预设数据传输规则序列中的数据传输规则的命中情况,生成所述数据请求标记序列之前,包括:

获取至少一个数据传输规则;

对所述至少一个数据传输规则进行编号,得到所述预设数据传输规则序列。

在一示例性实施例中,所述根据所述初始数据传输请求对所述预设数据传输规则序列中的数据传输规则的命中情况,生成所述数据请求标记序列,包括:

逐一检测所述初始数据传输请求是否命中所述预设数据传输规则序列中的数据传输规则;

若命中,则获取所述第一标记,否则获取第三标记;其中,所述第三标记表示未命中预设数据传输规则序列中的数据传输规则;

按照所述预设数据传输规则序列中的数据传输规则的排列关系,对所述第一标记和所述第三标记进行排列,得到所述数据请求标记序列。

在一示例性实施例中,所述对所述数据请求标记序列与所述目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,包括:

逐一检测所述数据请求标记序列中的标记与所述目标服务序列中相应位置的标记是否为所述第一标记;

若是,则将所述匹配标记序列中的标记确定为所述第二标记,否则将所述匹配标记序列中的标记确定为第四标记;

按照所述数据请求标记序列或所述目标服务序列的排列关系,对所述第二标记和所述第四标记进行排列,得到所述匹配标记序列。

在一示例性实施例中,所述检测所述匹配标记序列中的标记,当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例,包括:

检测所述匹配标记序列中的标记;

当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例;

当所述匹配标记序列中的标记不是所述第二标记时,调用预设的服务实例。

根据本公开实施例的第二方面,提供一种数据传输装置,包括:

请求标记序列解析单元,被配置为执行接收数据传输请求,并解析所述数据传输请求,得到数据请求标记序列;其中,所述数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;所述数据请求标记为第一标记时表示命中,否则表示未命中;

服务标记序列获取单元,被配置为执行获取目标服务节点中的目标服务标记序列;其中,所述目标服务标记序列中的每一目标服务标记用于表示是否命中所述预设数据传输规则序列中的数据传输规则;所述目标服务标记为第一标记时表示命中,否则表示未命中;所述目标服务节点为接收所述数据传输请求的服务节点;

标记匹配单元,被配置为执行对所述数据请求标记序列与所述目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当所述相同位置处的标记均为第一标记时,将所述匹配标记序列中的标记确定为第二标记;

数据传输单元,被配置为执行检测所述匹配标记序列中的标记,当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例。

在一示例性实施例中,所述数据传输装置还包括请求生成单元,被配置为执行:

获取初始数据传输请求;其中,所述初始数据传输请求为调用服务实例的请求;

根据所述初始数据传输请求对所述预设数据传输规则序列中的数据传输规则的命中情况,生成所述数据请求标记序列;

将所述数据请求标记序列添加至所述初始数据传输请求中,得到所述数据传输请求。

在一示例性实施例中,所述请求生成单元还被配置为执行:

获取至少一个数据传输规则;

对所述至少一个数据传输规则进行编号,得到所述预设数据传输规则序列。

在一示例性实施例中,所述请求生成单元还被配置为执行:

逐一检测所述初始数据传输请求是否命中所述预设数据传输规则序列中的数据传输规则;

若命中,则获取所述第一标记,否则获取第三标记;其中,所述第三标记表示未命中预设数据传输规则序列中的数据传输规则;

按照所述预设数据传输规则序列中的数据传输规则的排列关系,对所述第一标记和所述第三标记进行排列,得到所述数据请求标记序列。

在一示例性实施例中,所述标记匹配单元还被配置为执行:

逐一检测所述数据请求标记序列中的标记与所述目标服务序列中相应位置的标记是否为所述第一标记;

若是,则将所述匹配标记序列中的标记确定为所述第二标记,否则将所述匹配标记序列中的标记确定为第四标记;

按照所述数据请求标记序列或所述目标服务序列的排列关系,对所述第二标记和所述第四标记进行排列,得到所述匹配标记序列。

在一示例性实施例中,所述数据传输单元还被配置为执行:

检测所述匹配标记序列中的标记;

当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例;

当所述匹配标记序列中的标记不是所述第二标记时,调用预设的服务实例。

根据本公开实施例的第三方面,提供一种电子设备,包括:

处理器;

用于存储所述处理器可执行指令的存储器;

其中,所述处理器被配置为执行所述指令,以实现上述第一方面中任一项实施例中所述的数据传输方法。

根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述第一方面中任一项实施例中所述的数据传输方法。

根据本公开实施例的第五方面,提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行第一方面的任一项实施例中所述的数据传输方法。

本公开的实施例提供的技术方案至少带来以下有益效果:

接收数据传输请求,并解析数据传输请求,得到数据请求标记序列;其中,数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;数据请求标记为第一标记时表示命中,否则表示未命中;获取目标服务节点中的目标服务标记序列;其中,目标服务标记序列中的每一目标服务标记用于表示是否命中预设数据传输规则序列中的数据传输规则;目标服务标记为第一标记时表示命中,否则表示未命中;目标服务节点为接收数据传输请求的服务节点;对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当相同位置处的标记均为第一标记时,将匹配标记序列中的标记确定为第二标记;检测匹配标记序列中的标记,当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例。其中,数据请求标记序列与目标服务标记序列,均为对预设数据传输规则序列中的数据传输规则的命中结果的标记,并不包括具体的传输规则。同时,对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到的也是匹配标记序列,不包括具体的传输规则。最后根据匹配标记序列中的标记,调用数据传输规则对应的服务实例。整个过程并不涉及具体的传输规则,可大大降低数据传输过程中的载荷,减少数据传输所占用的资源,提高数据传输的效率。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。

图1是根据一示例性实施例示出的一种数据传输方法的应用环境图。

图2是根据一示例性实施例示出的一种数据传输方法的流程图。

图3是根据一示例性实施例示出的步骤S100之前的一种可实施方式的流程图。

图4是根据一示例性实施例示出的步骤S102的一种可实施方式的流程图。

图5是根据一示例性实施例示出的步骤S300的一种可实施方式的流程图。

图6是根据一示例性实施例示出的步骤S400的一种可实施方式的流程图。

图7是根据一示例性实施例示出的一种数据传输装置框图。

图8是根据一示例性实施例示出的一种用于数据传输的设备的框图。

具体实施方式

为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。

需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

本公开所提供的数据传输方法,可以应用于如图1所示的应用环境中。其中,终端110通过网络与业务服务器120进行交互。终端110接收数据传输请求,并解析数据传输请求,得到数据请求标记序列;其中,数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;数据请求标记为第一标记时表示命中,否则表示未命中;获取目标服务节点中的目标服务标记序列;其中,目标服务标记序列中的每一目标服务标记用于表示是否命中预设数据传输规则序列中的数据传输规则;目标服务标记为第一标记时表示命中,否则表示未命中;目标服务节点为接收数据传输请求的服务节点;对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当相同位置处的标记均为第一标记时,将匹配标记序列中的标记确定为第二标记;检测匹配标记序列中的标记,当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例。其中,数据请求标记序列与目标服务标记序列,均为对预设数据传输规则序列中的数据传输规则的命中结果的标记,并不包括具体的传输规则。同时,对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到的也是匹配标记序列,不包括具体的传输规则。最后根据匹配标记序列中的标记,调用数据传输规则对应的服务实例。整个过程并不涉及具体的传输规则,可大大降低数据传输过程中的载荷,减少数据传输所占用的资源,提高数据传输的效率。其中,终端110可以是但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,业务服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

图2是根据一示例性实施例示出的一种数据传输方法的流程图,如图2所示,以该方法应用于图1中的终端为例进行说明,包括以下步骤:

在步骤S100中,接收数据传输请求,并解析数据传输请求,得到数据请求标记序列;其中,数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;数据请求标记为第一标记时表示命中,否则表示未命中。

在步骤S200中,获取目标服务节点中的目标服务标记序列;其中,目标服务标记序列中的每一目标服务标记用于表示是否命中预设数据传输规则序列中的数据传输规则;目标服务标记为第一标记时表示命中,否则表示未命中;目标服务节点为接收数据传输请求的服务节点。

在步骤S300中,对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当相同位置处的标记均为第一标记时,将匹配标记序列中的标记确定为第二标记。

在步骤S400中,检测匹配标记序列中的标记,当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例。

其中,数据传输规则是指灰度发布过程中的数据传输方式。灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。数据传输规则是指试用产品新特性的用户的规则,例如,选中北京区的用户作为灰度发布的用户,或者选中ID号码尾数为0的用户作为灰度发布的用户等。预设的灰度规则序列是指由一系列的灰度规则按照一定的顺序排列形成的序列。

具体地,终端中的目标服务节点接收数据传输请求,并解析数据传输请求,得到数据请求标记序列。目标服务节点将数据请求标记序列与目标服务节点中的目标服务标记序列进行匹配,当相同位置处的标记均为第一标记时,将匹配标记序列中的标记确定为第二标记,得到最终的匹配标记序列。进一步,检测匹配标记序列中的标记,当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例,以实现该服务实例的功能。

示例地,若数据请求标记序列与目标服务标记序列均命中数据传输规则:“ID尾号为0的用户可参与新的服务实例的发布”,则根据数据传输请求中的数据请求标记序列,为“ID尾号为0的用户”调用对应的服务实例0,以实现服务实例0对应的特征;若数据请求标记序列与目标服务标记序列均命中数据传输规则:“ID尾号为1的用户可参与新的服务实例的发布”,则根据数据传输请求中的数据请求标记序列,为“ID尾号为1的用户”调用对应的服务实例1,以实现服务实例1对应的特征。若数据传输请求中的数据请求标记序列命中数据传输规则:“ID尾号为0的用户可参与新的服务实例的发布”,而目标服务节点中的目标服务标记序列命中数据传输规则:“ID尾号为1的用户可参与新的服务实例的发布”,则既不会调用服务实例0,也不会调用服务实例1,而是调用原来默认的服务实例,实现默认的服务实例对应的特征。

上述数据传输方法中,接收数据传输请求,并解析数据传输请求,得到数据请求标记序列;其中,数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;数据请求标记为第一标记时表示命中,否则表示未命中;获取目标服务节点中的目标服务标记序列;其中,目标服务标记序列中的每一目标服务标记用于表示是否命中预设数据传输规则序列中的数据传输规则;目标服务标记为第一标记时表示命中,否则表示未命中;目标服务节点为接收数据传输请求的服务节点;对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当相同位置处的标记均为第一标记时,将匹配标记序列中的标记确定为第二标记;检测匹配标记序列中的标记,当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例。其中,数据请求标记序列与目标服务标记序列,均为对预设数据传输规则序列中的数据传输规则的命中结果的标记,并不包括具体的传输规则。同时,对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,得到的也是匹配标记序列,不包括具体的传输规则。最后根据匹配标记序列中的标记,调用数据传输规则对应的服务实例。整个过程并不涉及具体的传输规则,可大大降低数据传输过程中的载荷,减少数据传输所占用的资源,提高数据传输的效率。

图3是根据一示例性实施例示出的步骤S100之前的一种可实施方式的流程图,包括以下步骤:

在步骤S101中,获取初始数据传输请求;其中,初始数据传输请求为调用服务实例的请求。

在步骤S102中,根据初始数据传输请求对预设数据传输规则序列中的数据传输规则的命中情况,生成数据请求标记序列。

在步骤S103中,将数据请求标记序列添加至初始数据传输请求中,得到数据传输请求。

具体地,获取调用服务实例的初始数据传输请求,检测初始数据传输请求对预设数据传输规则序列中的数据传输规则的命中情况,命中生成第一标记,否则不生成第一标记,得到一个数据请求标记序列。将该数据请求标记序列调价至初始数据传输请求中,得到最终的数据传输请求。

可选地,在步骤S102之前包括:获取至少一个数据传输规则;对至少一个数据传输规则进行编号,得到预设数据传输规则序列。

示例地,当获取到4个数据传输规则时,4个数据传输规则分别为“ID尾号为1的用户使用产品特性A”、“ID尾号为2的用户使用产品特性B”、“C地区的用户使用产品特性C”和“D地区的用户使用产品特性D”。对这4个数据传输规则进行编号,依次编号为数据传输规则1、数据传输规则2、数据传输规则3和数据传输规则4,这4个数据传输规则形成预设数据传输规则序列。

可选地,将所有正在进行的数据传输规则进行编号,从0开始依次递增,数据传输规则总数不超过320条。入口网关按照数据传输规则的编号,逐一判断初始数据传输请求是否命中相应的数据传输规则,并将命中结果放置在一个比特位中,命中为1,未命中为0,得到一个长度小于等于320位的比特序列。将此比特序列使用Base64格式进行编码,得到一个字符串(数据请求标记序列),此字符串即为需要传递的流量标记字段的内容。其中,可定义一个长度为40字节的字符串类型字段作为数据传输请求中的流量标记传输的字段。该字段可以通过跨服务调用的链路上下文进行传递,每个服务节点在收到数据传输请求并发送给下游的服务节点时都在请求头中携带此流量传输标记字段(数据请求标记序列),以便后续服务节点对数据传输规则的适用性进行判断。

上述示例性实施例中,获取初始数据传输请求;其中,初始数据传输请求为调用服务实例的请求;根据初始数据传输请求对预设数据传输规则序列中的数据传输规则的命中情况,生成数据请求标记序列;将数据请求标记序列添加至初始数据传输请求中,得到数据传输请求。从而能够使数据传输请求中带上标识数据传输规则的数据请求标记序列,降低数据传输请求中的载荷,减少后续对数据传输请求进行处理所占用的资源,提高数据传输的效率。

图4是根据一示例性实施例示出的步骤S102的一种可实施方式的流程图,包括以下步骤:

在步骤S1021中,逐一检测初始数据传输请求是否命中预设数据传输规则序列中的数据传输规则。

在步骤S1022中,若命中,则获取第一标记,否则获取第三标记;其中,第三标记表示未命中预设数据传输规则序列中的数据传输规则。

在步骤S1023中,按照预设数据传输规则序列中的数据传输规则的排列关系,对第一标记和第三标记进行排列,得到数据请求标记序列。

具体地,逐一检测初始数据传输请求是否命中数据传输规则序列中的数据传输规则,例如,有4个数据传输规则,分别为数据传输规则1“ID尾号为1的用户使用产品特性A”、数据传输规则2“ID尾号为2的用户使用产品特性B”、数据传输规则3“C地区的用户使用产品特性C”和数据传输规则4“D地区的用户使用产品特性D”。若一个初始数据传输请求为来自于C地区ID尾号为1的用户,当检测到初始数据传输请求命中数据传输规则序列中的数据传输规则1和数据传输规则3时,在数据请求标记序列中,将数据传输规则1和数据传输规则3对应的位置标记为第一标记。当检测到初始数据传输请求未命中数据传输规则序列中的数据传输规则2和数据传输规则4时,在数据请求标记序列中,将数据传输规则2和数据传输规则4对应的位置标记为第三标记。按照数据传输规则序列的排列关系,对命中结果中的第一标记和第三标记进行排列,得到数据请求标记序列{第一标记,第三标记,第一标记,第三标记}。得到的数据请求标记序列并不包括相应的数据传输规则,但其中包含了对数据传输规则的适用性。将该数据请求标记序列添加至初始数据传输请求中,可以得到由数据传输规则确定出的数据请求标记序列的数据传输请求。

可选地,可以将第一标记设置为1,第三标记设置为0,按照数据传输规则序列的排列关系,将命中结果中的第一标记1和第三标记0逐一排列至对应的比特位中,得到数据请求标记序列。

具体地,当第一标记设置为1第三标记设置为0时,按照数据传输规则序列的排列关系,对命中结果中的第一标记和第三标记进行排列,此时得到的数据请求标记序列{第一标记,第二标记,第一标记,第二标记},可进一步表示为{1,0,1,0}。如此,变可将数据请求标记序列转变为可由计算机直接处理的语言,可快速进行相应的运算和处理。

上述示例性实施例中,逐一检测初始数据传输请求是否命中预设数据传输规则序列中的数据传输规则;若命中,则获取第一标记,否则获取第三标记;其中,第三标记表示未命中预设数据传输规则序列中的数据传输规则;按照预设数据传输规则序列中的数据传输规则的排列关系,对第一标记和第三标记进行排列,得到数据请求标记序列。从而能够将数据传输规则转换为数据请求标记序列,通过将数据请求标记序列添加到数据传输请求中,跟随数据传输请求进行传输,降低数据传输请求中的载荷,减少后续对数据传输请求进行处理所占用的资源,提高数据传输的效率。

图5是根据一示例性实施例示出的步骤S300的一种可实施方式的流程图,包括以下步骤:

在步骤S310中,逐一检测数据请求标记序列中的标记与目标服务序列中相应位置的标记是否为第一标记。

在步骤S320中,若是,则将匹配标记序列中的标记确定为第二标记,否则将匹配标记序列中的标记确定为第四标记。

在步骤S330中,按照数据请求标记序列或目标服务序列的排列关系,对第二标记和第四标记进行排列,得到匹配标记序列。

具体地,逐一检测数据请求标记序列中的标记与目标服务序列中相应位置的标记是否为第一标记,相当于检测数据请求标记序列与目标服务序列中相应位置处是否命中相应位置的数据传输规则。若数据请求标记序列中的标记与目标服务序列中相应位置的标记均为第一标记,表示数据请求标记序列与目标服务序列中相应位置处命中相应位置的数据传输规则,则对检测结果进行标记,得到第二标记。若数据请求标记序列中的标记与目标服务序列中相应位置的标记不全是第一标记,表示数据请求标记序列与目标服务序列中相应位置处未命中相应位置的数据传输规则,则对检测结果进行标记,得到第四标记。按照数据请求标记序列或目标服务序列的排列关系,对第二标记和第四标记进行排列,得到匹配标记序列。

可选地,当第一标记和第二标记设置为1,第三标记和第四标记设置为0时,可通过对数据请求标记序列与目标服务标记序列执行与操作,对数据请求标记序列与目标服务标记序列中相同位置处的标记进行匹配,以得到匹配标记序列。

示例地,当数据请求标记序列为{1,0,1,0},目标服务标记序列为{1,0,0,1}时,对数据请求标记序列与目标服务标记序列执行与操作,得到的匹配标记序列为{1,0,0,0}。由于1表示命中一个数据传输规则,0表示未命中数据传输规则,得到的匹配标记序列{1,0,0,0}表示数据请求标记序列与目标服务标记序列均命中数据传输规则时,匹配标记序列中的标记为1,表示命中数据传输规则。而当数据请求标记序列与目标服务标记序列中的至少一个未命中数据传输规则时,匹配标记序列中的标记为0,表示未命中数据传输规则。

上述示例性实施例中,逐一检测数据请求标记序列中的标记与目标服务序列中相应位置的标记是否为第一标记;若是,则将匹配标记序列中的标记确定为第二标记,否则将匹配标记序列中的标记确定为第四标记;按照数据请求标记序列或目标服务序列的排列关系,对第二标记和第四标记进行排列,得到匹配标记序列。从而能够根据数据请求标记序列与目标服务标记序列中的标记,快速地确定出匹配标记序列,减少数据处理所占用的资源,提高数据传输的效率。

图6是根据一示例性实施例示出的步骤S400的一种可实施方式的流程图,包括以下步骤:

在步骤S410中,检测匹配标记序列中的标记。

在步骤S420中,当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例。

在步骤S430中,当匹配标记序列中的标记不是第二标记时,调用预设的服务实例。

具体地,检测匹配标记序列中的标记是否为第二标记,若是,说明数据请求标记序列与目标服务标记序列均命中对应的数据传输规则,此时,调用数据传输规则对应的服务实例。当匹配标记序列中的标记不是第二标记时,说明数据请求标记序列与目标服务标记序列中的至少一个未命中对应的数据传输规则,此时,调用预设的服务实例。

示例地,当匹配标记序列为{1,0,0,0}时,由于1表示命中一个数据传输规则,0表示未命中数据传输规则,匹配标记序列{1,0,0,0}表示数据请求标记序列与目标服务标记序列均命中数据传输规则时,匹配标记序列中的标记为1,表示命中数据传输规则。而当数据请求标记序列与目标服务标记序列中的至少一个未命中数据传输规则时,匹配标记序列中的标记为0,表示未命中数据传输规则。匹配标记序列中的标记为1时,匹配标记序列,匹配标记序列中的标记为0时,调用预设的服务实例。

示例地,若数据请求标记序列为使用Base64格式进行编码得到的字符串,则在收到数据传输请求的服务节点,先将流量标记字段的字符串按照Base64格式反解为比特序列,并与本服务节点参与的目标服务标记序列的比特序列执行按位与操作,若最终结果为1,则认为本次的数据传输请求为染色的灰度请求,若为0,则认为数据传输请求是一般请求。业务服务判断了数据传输规则后,即可按照数据传输规则的要求,挑选对应的服务实例进行调用。

上述示例性实施例中,检测匹配标记序列中的标记;当匹配标记序列中的标记为第二标记时,调用数据传输规则对应的服务实例;当匹配标记序列中的标记不是第二标记时,调用预设的服务实例。从而,能够根据匹配标记序列,快速地调用对应的服务实例,能够减少数据处理所占用的资源,提高数据传输的效率。

应该理解的是,虽然图2-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

图7是根据一示例性实施例示出的一种数据传输装置框图。参照图7,该装置包括请求标记序列解析单元701、服务标记序列获取单元702、标记匹配单元703和数据传输单元704:

请求标记序列解析单元701,被配置为执行接收数据传输请求,并解析所述数据传输请求,得到数据请求标记序列;其中,所述数据请求标记序列中的每一数据请求标记用于表示是否命中预设数据传输规则序列中的数据传输规则;所述数据请求标记为第一标记时表示命中,否则表示未命中;

服务标记序列获取单元702,被配置为执行获取目标服务节点中的目标服务标记序列;其中,所述目标服务标记序列中的每一目标服务标记用于表示是否命中所述预设数据传输规则序列中的数据传输规则;所述目标服务标记为第一标记时表示命中,否则表示未命中;所述目标服务节点为接收所述数据传输请求的服务节点;

标记匹配单元703,被配置为执行对所述数据请求标记序列与所述目标服务标记序列中相同位置处的标记进行匹配,得到匹配标记序列,当所述相同位置处的标记均为第一标记时,将所述匹配标记序列中的标记确定为第二标记;

数据传输单元704,被配置为执行检测所述匹配标记序列中的标记,当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例。

在一示例性实施例中,所述数据传输装置还包括请求生成单元,被配置为执行:获取初始数据传输请求;其中,所述初始数据传输请求为调用服务实例的请求;根据所述初始数据传输请求对所述预设数据传输规则序列中的数据传输规则的命中情况,生成所述数据请求标记序列;将所述数据请求标记序列添加至所述初始数据传输请求中,得到所述数据传输请求。

在一示例性实施例中,所述请求生成单元还被配置为执行:获取至少一个数据传输规则;对所述至少一个数据传输规则进行编号,得到所述预设数据传输规则序列。

在一示例性实施例中,所述请求生成单元还被配置为执行:逐一检测所述初始数据传输请求是否命中所述预设数据传输规则序列中的数据传输规则;若命中,则获取所述第一标记,否则获取第三标记;其中,所述第三标记表示未命中预设数据传输规则序列中的数据传输规则;按照所述预设数据传输规则序列中的数据传输规则的排列关系,对所述第一标记和所述第三标记进行排列,得到所述数据请求标记序列。

在一示例性实施例中,所述标记匹配单元703还被配置为执行:逐一检测所述数据请求标记序列中的标记与所述目标服务序列中相应位置的标记是否为所述第一标记;若是,则将所述匹配标记序列中的标记确定为所述第二标记,否则将所述匹配标记序列中的标记确定为第四标记;按照所述数据请求标记序列或所述目标服务序列的排列关系,对所述第二标记和所述第四标记进行排列,得到所述匹配标记序列。

在一示例性实施例中,所述数据传输单元704还被配置为执行:检测所述匹配标记序列中的标记;当所述匹配标记序列中的标记为所述第二标记时,调用所述数据传输规则对应的服务实例;当所述匹配标记序列中的标记不是所述第二标记时,调用预设的服务实例。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

图8是根据一示例性实施例示出的一种用于数据传输的设备800的框图。例如,设备800可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。

参照图8,设备800可以包括以下一个或多个组件:处理组件802、存储器804、电力组件806、多媒体组件808、音频组件810、输入/输出(I/O)的接口812、传感器组件814以及通信组件816。

处理组件802通常控制设备800的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在设备800上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘或光盘。

电源组件806为设备800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为设备800生成、管理和分配电力相关联的组件。

多媒体组件808包括在所述设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为设备800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为设备800的显示器和小键盘,传感器组件814还可以检测设备800或设备800一个组件的位置改变,用户与设备800接触的存在或不存在,设备800方位或加速/减速和设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。

通信组件816被配置为便于设备800和其他设备之间有线或无线方式的通信。设备800可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。

在示例性实施例中,设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

在示例性实施例中,还提供了一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,设备的至少一个处理器从所述可读存储介质读取并执行所述计算机程序,使得设备执行上述方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

相关技术
  • 数据传输方法、数据传输装置、电子设备和存储介质
  • 数据传输方法、数据传输装置、存储介质与电子设备
技术分类

06120112881142