CN113676549A - 应用请求的分流方法及应用网关、电子设备、存储介质 - Google Patents
应用请求的分流方法及应用网关、电子设备、存储介质 Download PDFInfo
- Publication number
- CN113676549A CN113676549A CN202111026588.4A CN202111026588A CN113676549A CN 113676549 A CN113676549 A CN 113676549A CN 202111026588 A CN202111026588 A CN 202111026588A CN 113676549 A CN113676549 A CN 113676549A
- Authority
- CN
- China
- Prior art keywords
- service system
- request
- request address
- target service
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012545 processing Methods 0.000 claims abstract description 11
- 230000006870 function Effects 0.000 claims description 12
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种应用请求的分流方法及应用网关、电子设备、存储介质,其中,所述应用请求的分流方法应用于应用网关,所述应用请求的分流方法,包括:接收目标应用向目标业务系统发送的业务请求;其中,所述业务请求中至少包括用户标识以及请求地址;根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;将所述业务请求转发至所述当前业务系统进行处理。从而在更新版本的目标业务系统后,依旧还可以访问旧版本的目标业务系统,从而不需要强制所有用户都进行目标应用的更新,依旧可以正常进行访问。
Description
技术领域
本申请涉及请求分流技术领域,特别涉及一种应用请求的分流方法及应用网关、电子设备、存储介质。
背景技术
随着业务的快速迭代更新,企业内部的业务系统也会相应地迭代升级以及优化。
为了避免对旧的业务以及开放出去的APP的影响,现今需要强制所有用户进行APP升级,以修改APP的访问地址,从而使得APP可以请求到新的优化后的业务系上,否则无法正常进行访问。
但是,对于一些特殊的业务场景,例如物联网等场景,由于没有办法保证有很全面的智能设备做验证测试,所以新版本容易出现问题,而一旦用户升级到新的版本,当出现问题时,必须依赖所有用户做降低APP版本的操作,过于繁琐。
发明内容
基于上述现有技术的不足,本申请提供了一种应用请求的分流方法及应用网关、电子设备、存储介质,以解决现有技术过于繁琐的问题。
为了实现上述目的,本申请提供了以下技术方案:
本申请第一方面提供了一种应用请求的分流方法,应用于应用网关,所述应用请求的分流方法包括:
接收目标应用向目标业务系统发送的业务请求;其中,所述业务请求中至少包括用户标识以及请求地址;
根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;
将所述业务请求转发至所述当前业务系统进行处理。
可选地,在上述的应用请求的分流方法中,所述根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统,包括:
从所述业务请求中提取出所述用户标识以及所述请求地址;
判断所述用户标识是否在黑名单中;
若判断出所述用户标识在黑名单中,则将旧版本的所述目标业务系统确定为当前业务系统;
若判断出所述用户标识不在黑名单中,则判断所述用户标识是否在白名单中;
若判断出所述用户标识在白名单中,则将新版本的所述目标业务系统确定为当前业务系统;
若判断出所述用户标识不在白名单中,则基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
可选地,在上述的应用请求的分流方法中,所述基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统,包括:
利用哈希算法对所述请求地址进行计算,得到所述请求地址对应的哈希值;
对所述请求地址对应的哈希值进行取余运算,得到所述请求地址对应的余数;
判断所述请求地址对应的余数是否大于所述预设分流比例的分子;其中,若判断所述请求地址对应的余数不大于所述预设分流比例的分子,则执行所述将新版本的所述目标业务系统确定为当前业务系统;若判断所述请求地址对应的余数大于所述预设分流比例的分子,则执行所述将旧版本的所述目标业务系统确定为当前业务系统。
可选地,在上述的应用请求的分流方法中,所述若判断出所述用户标识不在白名单中之后,还包括:
判断是否需要进行接口分流;其中,若判断出需要进行结果分流,则执行所述基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;若判断出不需要进行接口分流,则执行所述将旧版本的所述目标业务系统确定为当前业务系统。
可选地,在上述的应用请求的分流方法中,所述根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统之前,还包括:
调用鉴权功能以及检验功能确定所述业务请求的合法性;其中,若确定所述业务请求合法,则执行所述据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
本申请第二方面提供了一种应用网关,包括:
接收单元,用于接收目标应用向目标业务系统发送的业务请求;其中,所述业务请求中至少包括用户标识以及请求地址;
选取单元,用于根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;
转发单元,用于将所述业务请求转发至所述当前业务系统进行处理。
可选地,在上述的应用网关中,所述选取单元,包括:
提取单元,用于从所述业务请求中提取出所述用户标识以及所述请求地址;
第一判断单元,用于判断所述用户标识是否在黑名单中;
第一确定单元,用于若判断出所述用户标识在黑名单中,则将旧版本的所述目标业务系统确定为当前业务系统;
第二判断单元,用于若判断出所述用户标识不在黑名单中,则判断所述用户标识是否在白名单中;
第二确定单元,用于若判断出所述用户标识在白名单中,则将新版本的所述目标业务系统确定为当前业务系统;
接口分流单元,用于若判断出所述用户标识不在白名单中,则基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
可选地,在上述的应用网关中,所述接口分流单元,包括:
第一计算单元,用于利用哈希算法对所述请求地址进行计算,得到所述请求地址对应的哈希值;
第二计算单元,用于对所述请求地址对应的哈希值进行取余运算,得到所述请求地址对应的余数;
第三判断单元,用于判断所述请求地址对应的余数是否大于所述预设分流比例的分子;其中,若判断所述请求地址对应的余数不大于所述预设分流比例的分子,则所述第二确定单元执行所述将新版本的所述目标业务系统确定为当前业务系统;若判断所述请求地址对应的余数大于所述预设分流比例的分子,则所述第一确定单元执行所述将旧版本的所述目标业务系统确定为当前业务系统。
可选地,在上述的应用网关中,还包括:
第四判断单元,用于在判断出所述用户标识不在白名单时,判断是否需要进行接口分流;其中,若判断出需要进行结果分流,则所述接口分流单元执行所述基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;若判断出不需要进行接口分流,则所述第一确定单元执行所述将旧版本的所述目标业务系统确定为当前业务系统。
可选地,在上述的应用网关中,还包括:
合法性确定单元,用于调用鉴权功能以及检验功能确定所述业务请求的合法性;其中,若确定所述业务请求合法,则所述选取单元执行所述据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
本申请第三方面提供了一种电子设备,包括:
存储器和处理器;
其中,所述存储器用于存储程序;
所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如上述任意一项所述的应用请求的分流方法。
本申请第四方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一项所述的应用请求的分流方法。
本申请提供的一种应用请求的分流方法,应用于应用网关,该应用请求的分流方法,通过接收目标应用向目标业务系统发送的业务请求。其中,业务请求中至少包括用户标识以及请求地址。然后,根据用户标识和/或所述请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统,并将业务请求转发至当前业务系统进行处理。从而在更新版本的目标业务系统后,依旧还可以访问旧版本的目标业务系统,从而不需要强制所有用户都进行目标应用的更新,依旧可以正常进行访问,从而在出现问题时,也就不用依赖所有用户做降低APP版本的操作。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种应用请求的分流方法的流程图;
图2为本申请另一实施例提供的一种选取当前业务系统的方法的流程图;
图3为本申请另一实施例提供的一种根据请求地址选取当前业务系统的方法的流程图;
图4为本申请另一实施例提供的另一种应用请求的分流方法的流程图;
图5为本申请另一实施例提供的一种应用网关的结构示意图;
图6为本申请另一实施例提供的一种选取单元的结构示意图;
图7为本申请另一实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请实施例提供了一种应用请求的分流方法,应用于应用网关。如图1所示,本申请实施例提供的一种应用请求的分流方法,包括以下步骤:
S101、接收目标应用向目标业务系统发送的业务请求,业务请求中至少包括用户标识以及请求地址。
其中,本申请实施例中的应用主要指的是APP,目标应用则指的是某一款APP。相应的,应用网关就为APP网关。
具体的,用户通过在目标应用上操作,从而向目标业务系统发送业务请求,而业务请求会先由应用网关进行接收并处理后,下发给目标业务系统。其中,目标用于通常通过超文本传输协议(Hyper Text Transfer Protocol,HTTP)的形式发送业务请求。
可选地,为了保证数据安全,在执行步骤S102之前还可以先进一步执行:
调用鉴权功能以及检验功能确定业务请求的合法性。
其中,若出确定业务请求合法,则执行步骤S102。
S102、根据用户标识和/或请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
也就是说,在本申请中,在更新版本的目标业务系统后,依旧可以访问旧版本的目标业务系统,所以可以需要强制进行目标应用进行更新,也依旧可以访问目标业务系统。
需要说明的是,本申请中可以只根据用户标识,来确定新版本的目标业务系统或旧版本的目标业务系统作为指定业务系。或者只请求地址,来确定新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。当然,也可以同时根据用户标识和请求地址,来确定新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
可选地,根据用户标识选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统,以根据用户的不同将用户发送的业务请求转发至响应的新版本的目标业务系统中,或者转发至旧的目标业务系统中。可选地,可以是根据用户在目标应用的配置,确定该用户是选择了新版本的目标业务系统,还是旧版本的目标业务系统,从而根据用户选择进行业务请求的转发,从而实现业务请求可以访问新版本和旧版本的目标业务系统,进而不用必须进行目标应用的升级。
又或者是根据用户的历史记录等信息,确定先前在有新版本更新后,用户标识对应的用户的一般通过目标应用访问新版本还是旧版本的目标业务系统,或者用户是否会及时主动进行目标应用的更新,确定将新版本的目标业务系统确定为当前业务系统,还是将旧版本的目标业务系统作为当前业务系统。当然,也可以采用其他的方式,基于用户标识,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
可选地,根据请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统,可以是根据请求地址随机将新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。或者,根据请求地址的不同,相应地将新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。同样,也可以采用其他的方式,基于请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
可选地,在本申请另一实施例中,步骤S102的一种具体实施方式,如图2所示,包括以下步骤:
S201、从业务请求中提取出用户标识以及请求地址。
可选地,可以对业务请求进行解析,并从指定字段中提取出用户标识以及请求地址,或者基于自然语音处理技术识别出业务请求中的用户标识以及请求地址等。
S202、判断用户标识是否在黑名单中。
需要说明的是,在本申请实施例中,将需要将业务请求转发至旧版本的目标业务系统的用户标识存储在黑名单中,所以在判断出用户标识在黑名单中,则执行步骤S203,若判断出用户标识不在黑名单中,则执行步骤S204。
可选地,可以基于用户的操作将用户的用户标识存储至黑名单中,或者存储至白名单,或者基于用户的历史行为数据,具体可以是基于用户在新版本更新时,是否及时更新目标应用,是否将用户的用户标识添加至黑名单中。当然,也可以是采用其他的方式,确定存储至黑名单中的用户标识。
S203、将旧版本的目标业务系统确定为当前业务系统。
S204、判断用户标识是否在白名单中。
需要说明的是,在本申请实施例中,将需要将业务请求转发至新版本的目标业务系统的用户标识存储在白名单中,所以在判断出用户标识在白名单中时,执行步骤S205。若判断出用户标识不在白名单中,则执行步骤S206。
同理,可以采用与确定黑名单相同的方式,确定白名单中的用户标识。
S205、将新版本的目标业务系统确定为当前业务系统。
S206、基于请求地址,按照预设分流比例选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
在本申请实施例中,通过设置预设分流比例,以实现转发至新版本和就版本的目标业务系统的占比。
可选地,预设分流比例可以是新版本的目标业务系统对应的比例,即需要分流给新版本的目标业务系统的流量比例,而1减去预设分流比例即为旧版本的目标业务系统对应的比例。通常,新版本的目标业务系统为主要使用的版本,所以新版本的目标业务系统所对应的预设分流比例相对较大。
具体的,基于请求地址实现预设分流比例的流量分流,从而不需要所有用户的需求进行目标应用的更新,也可以依旧可以访问目标业务系统。
可选地,步骤S201~步骤S205为基于用户标识进行分流,而步骤S206为基于请求地址进行分流,即为接口分流,所以在本申请另一实施例中,在步骤S204判断出用户标识不在白名单中,可以先执行:
判断是否需要进行接口分流。
具体可以根据是否配置有接口分流的信息,判断是否需要进行接口分流。若判断出需要进行结果分类则执行步骤S206。若判断出不需要进接口分流,则执行步骤S203。当然也可以是执行步骤S205。
可选地,本申请另一实施例中,步骤S206的一种具体实施方式,如图3所示,包括以下步骤:
S301、利用哈希算法对所述请求地址进行计算,得到请求地址对应的哈希值。
S302、对请求地址对应的哈希值进行取余运算,得到请求地址对应的余数。
可选地,取余运算具体可以是对预设分流比例的分母进行取余运算,即计算哈希值除以预设分流比例的分母的余数。
S303、判断请求地址对应的余数是否大于预设分流比例的分子。
其中,若判断出请求地址对应的余数不大于预设分流比例的分子,则执行步骤S304。若判断出请求地址对应的余数大于预设分流比例的分子,则执行步骤S305。例如,预设分流比例为80%,则余数不大于80的,则执行步骤S304,以将余数不大于80的业务请求分流到新版本的目标业务系统。
S304、将新版本的目标业务系统确定为当前业务系统。
S305、将旧版本的目标业务系统确定为当前业务系统。
S103、将业务请求转发至当前业务系统进行处理。
本申请实施例提供的一种应用请求的分流方法,应用于应用网关,该应用请求的分流方法,通过接收目标应用向目标业务系统发送的业务请求。其中,业务请求中至少包括用户标识以及请求地址。然后,根据用户标识和/或所述请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统,并将业务请求转发至当前业务系统进行处理。从而在更新版本的目标业务系统后,依旧还可以访问旧版本的目标业务系统,从而不需要强制所有用户都进行目标应用的更新,依旧可以正常进行访问,进而在出现问题时,也就不用依赖所有用户做降低APP版本的操作。
本申请另一实施例提供了另一种应用请求的分流方法,应用于应用网关。如图4所示,本申请实施例提供的应用请求的分流方法,包括以下步骤:
S401、接收目标应用向目标业务系统发送的业务请求。
其中,业务请求中至少包括用户标识以及请求地址。
S402、调用鉴权功能以及检验功能确定业务请求是否合法。
其中,若确定业务请求合法,则执行步骤S403。
S403、从业务请求中提取出用户标识以及请求地址。
S404、判断用户标识是否在黑名单中。
其中,若判断出用户标识在黑名单中,则执行步骤S405。若判断出用户标识不在黑名单中,则执行步骤S406。
S405、将旧版本的目标业务系统确定为当前业务系统。
需要说明的是,在执行步骤S405之后,执行步骤S412。
S406、判断用户标识是否在白名单中。
其中,若判断出用户标识在白名单中,则执行步骤S407。若判断出用户标识不在白名单中,则执行步骤S408。
S407、将新版本的目标业务系统确定为当前业务系统。
需要说明的是,在执行步骤S407之后,执行步骤S412。
S408、判断是否需要进行接口分流。
其中,若判断出需要进行接口分流,则执行步骤S409。若判断出不需要进行接口分流,则执行步骤S405。
需要说明的是,在本申请实施例中,接口分流指的就是根据请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统,并将业务请求转发至当前业务系统。
S409、利用哈希算法对请求地址进行计算,得到请求地址对应的哈希值。
S410、对请求地址对应的哈希值进行取余运算,得到请求地址对应的余数。
S411、判断请求地址对应的余数是否大于预设分流比例的分子。
其中,若判断请求地址对应的余数不大于预设分流比例的分子,则执行步骤S407。若判断请求地址对应的余数大于预设分流比例的分子,则执行步骤S405。
S412、将业务请求转发至当前业务系统进行处理。
本申请另一实施例提供了一种应用网关,如图5所示,包括以下单元:
接收单元501,用于接收目标应用向目标业务系统发送的业务请求。
其中,业务请求中至少包括用户标识以及请求地址。
选取单元502,用于根据用户标识和/或请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
转发单元503,用于将业务请求转发至当前业务系统进行处理。
可选地,在本申请另一实施例提供的应用网关中,选取单元,如图6所示,包括:
提取单元601,用于从业务请求中提取出用户标识以及请求地址。
第一判断单元602,用于判断用户标识是否在黑名单中。
第一确定单元603,用于若判断出用户标识在黑名单中,则将旧版本的目标业务系统确定为当前业务系统。
第二判断单元604,用于若判断出用户标识不在黑名单中,则判断用户标识是否在白名单中。
第二确定单元605,用于若判断出用户标识在白名单中,则将新版本的目标业务系统确定为当前业务系统。
接口分流单元606,用于若判断出用户标识不在白名单中,则基于请求地址,按照预设分流比例选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
可选地,在本申请另一实施例提供的应用网关中,接口分流单元,包括:
第一计算单元,用于利用哈希算法对请求地址进行计算,得到请求地址对应的哈希值。
第二计算单元,用于对请求地址对应的哈希值进行取余运算,得到请求地址对应的余数。
第三判断单元,用于判断请求地址对应的余数是否大于预设分流比例的分子。
其中,若判断请求地址对应的余数不大于预设分流比例的分子,则第二确定单元执行将新版本的目标业务系统确定为当前业务系统;若判断请求地址对应的余数大于预设分流比例的分子,则第一确定单元执行将旧版本的目标业务系统确定为当前业务系统。
可选地,在本申请另一实施例提供的应用网关中,还包括:
第四判断单元,用于在判断出用户标识不在白名单时,判断是否需要进行接口分流。
其中,若判断出需要进行结果分流,则接口分流单元执行基于请求地址,按照预设分流比例选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统;若判断出不需要进行接口分流,则第一确定单元执行将旧版本的目标业务系统确定为当前业务系统。
可选地,在本申请另一实施例提供的应用网关中,还包括:
合法性确定单元,用于调用鉴权功能以及检验功能确定业务请求的合法性。
其中,若确定业务请求合法,则选取单元执行据用户标识和/或请求地址,选取新版本的目标业务系统或旧版本的目标业务系统作为当前业务系统。
需要说明的是,本申请上述实施例提供的各个单元的具体工作过程,可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
本申请另一实施例提供了一种电子设备,如图7所示,包括:
存储器701和处理器702。
其中,存储器701用于存储程序。
处理器702用于执行存储器存储的程序,并且该程序被执行时,具体用于实现如上述任意一个实施例提供的应用请求的分流方法。
本申请另一实施例提供了一种计算机存储介质,用于存储计算机程序,计算机程序被执行时,用于实现如上述任意一个实施例提供的应用请求的分流方法。
计算机存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种应用请求的分流方法,其特征在于,应用于应用网关,所述应用请求的分流方法包括:
接收目标应用向目标业务系统发送的业务请求;其中,所述业务请求中至少包括用户标识以及请求地址;
根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;
将所述业务请求转发至所述当前业务系统进行处理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统,包括:
从所述业务请求中提取出所述用户标识以及所述请求地址;
判断所述用户标识是否在黑名单中;
若判断出所述用户标识在黑名单中,则将旧版本的所述目标业务系统确定为当前业务系统;
若判断出所述用户标识不在黑名单中,则判断所述用户标识是否在白名单中;
若判断出所述用户标识在白名单中,则将新版本的所述目标业务系统确定为当前业务系统;
若判断出所述用户标识不在白名单中,则基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
3.根据权利要求2所述的方法,其特征在于,所述基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统,包括:
利用哈希算法对所述请求地址进行计算,得到所述请求地址对应的哈希值;
对所述请求地址对应的哈希值进行取余运算,得到所述请求地址对应的余数;
判断所述请求地址对应的余数是否大于所述预设分流比例的分子;
若判断所述请求地址对应的余数不大于所述预设分流比例的分子,则将新版本的所述目标业务系统确定为当前业务系统;
若判断所述请求地址对应的余数大于所述预设分流比例的分子,则将旧版本的所述目标业务系统确定为当前业务系统。
4.根据权利要求2所述的方法,其特征在于,所述若判断出所述用户标识不在白名单中之后,还包括:
判断是否需要进行接口分流;其中,若判断出需要进行结果分流,则执行所述基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;若判断出不需要进行接口分流,则执行所述将旧版本的所述目标业务系统确定为当前业务系统。
5.根据权利要求1所述的方法,其特征在于,所述根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统之前,还包括:
调用鉴权功能以及检验功能确定所述业务请求的合法性;其中,若确定所述业务请求合法,则执行所述据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
6.一种应用网关,其特征在于,包括:
接收单元,用于接收目标应用向目标业务系统发送的业务请求;其中,所述业务请求中至少包括用户标识以及请求地址;
选取单元,用于根据所述用户标识和/或所述请求地址,选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统;
转发单元,用于将所述业务请求转发至所述当前业务系统进行处理。
7.根据权利要求6所述的应用网关,其特征在于,所述选取单元,包括:
提取单元,用于从所述业务请求中提取出所述用户标识以及所述请求地址;
第一判断单元,用于判断所述用户标识是否在黑名单中;
第一确定单元,用于若判断出所述用户标识在黑名单中,则将旧版本的所述目标业务系统确定为当前业务系统;
第二判断单元,用于若判断出所述用户标识不在黑名单中,则判断所述用户标识是否在白名单中;
第二确定单元,用于若判断出所述用户标识在白名单中,则将新版本的所述目标业务系统确定为当前业务系统;
接口分流单元,用于若判断出所述用户标识不在白名单中,则基于所述请求地址,按照预设分流比例选取新版本的所述目标业务系统或旧版本的所述目标业务系统作为当前业务系统。
8.根据权利要求7所述的应用网关,其特征在于,所述接口分流单元,包括:
第一计算单元,用于利用哈希算法对所述请求地址进行计算,得到所述请求地址对应的哈希值;
第二计算单元,用于对所述请求地址对应的哈希值进行取余运算,得到所述请求地址对应的余数;
第三判断单元,用于判断所述请求地址对应的余数是否大于所述预设分流比例的分子;其中,若判断所述请求地址对应的余数不大于所述预设分流比例的分子,则所述第二确定单元执行所述将新版本的所述目标业务系统确定为当前业务系统;若判断所述请求地址对应的余数大于所述预设分流比例的分子,则所述第一确定单元执行所述将旧版本的所述目标业务系统确定为当前业务系统。
9.一种电子设备,其特征在于,包括:
存储器和处理器;
其中,所述存储器用于存储程序;
所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如权利要求1至5任意一项所述的应用请求的分流方法。
10.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,用于实现如权利要求1至5任意一项所述的应用请求的分流方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111026588.4A CN113676549A (zh) | 2021-09-02 | 2021-09-02 | 应用请求的分流方法及应用网关、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111026588.4A CN113676549A (zh) | 2021-09-02 | 2021-09-02 | 应用请求的分流方法及应用网关、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113676549A true CN113676549A (zh) | 2021-11-19 |
Family
ID=78548325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111026588.4A Pending CN113676549A (zh) | 2021-09-02 | 2021-09-02 | 应用请求的分流方法及应用网关、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113676549A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022174A (zh) * | 2022-06-20 | 2022-09-06 | 北京奇艺世纪科技有限公司 | 一种请求处理方法、装置、可读存储介质及电子设备 |
CN115361452A (zh) * | 2022-08-11 | 2022-11-18 | 上海浦东发展银行股份有限公司 | 新老系统同步运行的分流方法、系统、电子设备和介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105099988A (zh) * | 2014-04-24 | 2015-11-25 | 阿里巴巴集团控股有限公司 | 用于支持灰度发布的方法、访问方法以及装置和系统 |
CN106549810A (zh) * | 2016-11-24 | 2017-03-29 | 深圳市小满科技有限公司 | 云服务平台新版本发布前测试方法、装置以及系统 |
CN108768875A (zh) * | 2018-05-31 | 2018-11-06 | 康键信息技术(深圳)有限公司 | 应用的灰度发布方法、装置及计算机可读存储介质 |
CN110071960A (zh) * | 2019-03-12 | 2019-07-30 | 平安科技(深圳)有限公司 | 管理灰度发布的方法、系统、设备及存储介质 |
CN110650163A (zh) * | 2018-06-26 | 2020-01-03 | 马上消费金融股份有限公司 | 一种灰度发布方法、系统、设备及计算机可读存储介质 |
CN111338967A (zh) * | 2020-03-09 | 2020-06-26 | 京东数字科技控股有限公司 | 一种分流测试方法、装置、电子设备及存储介质 |
CN111914194A (zh) * | 2020-07-02 | 2020-11-10 | 网联清算有限公司 | 一种业务系统变更方法、装置、电子设备及存储介质 |
CN112000348A (zh) * | 2020-07-28 | 2020-11-27 | 金蝶医疗软件科技有限公司 | 服务灰度发布的控制方法、装置、计算机设备 |
CN112114869A (zh) * | 2020-09-18 | 2020-12-22 | 聚好看科技股份有限公司 | 一种服务器、灰度发布方法、装置及介质 |
WO2021051541A1 (zh) * | 2019-09-18 | 2021-03-25 | 平安科技(深圳)有限公司 | 基于微服务框架的一起灰度方法、装置和计算机设备 |
WO2021109669A1 (zh) * | 2019-12-05 | 2021-06-10 | 华为技术有限公司 | 恶意域名访问的检测方法、装置及计算机可读存储介质 |
CN113010811A (zh) * | 2019-12-20 | 2021-06-22 | 北京百度网讯科技有限公司 | 网页获取方法、装置、电子设备及计算机可读存储介质 |
-
2021
- 2021-09-02 CN CN202111026588.4A patent/CN113676549A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105099988A (zh) * | 2014-04-24 | 2015-11-25 | 阿里巴巴集团控股有限公司 | 用于支持灰度发布的方法、访问方法以及装置和系统 |
CN106549810A (zh) * | 2016-11-24 | 2017-03-29 | 深圳市小满科技有限公司 | 云服务平台新版本发布前测试方法、装置以及系统 |
CN108768875A (zh) * | 2018-05-31 | 2018-11-06 | 康键信息技术(深圳)有限公司 | 应用的灰度发布方法、装置及计算机可读存储介质 |
CN110650163A (zh) * | 2018-06-26 | 2020-01-03 | 马上消费金融股份有限公司 | 一种灰度发布方法、系统、设备及计算机可读存储介质 |
WO2020181684A1 (zh) * | 2019-03-12 | 2020-09-17 | 平安科技(深圳)有限公司 | 管理灰度发布的方法、系统、设备及存储介质 |
CN110071960A (zh) * | 2019-03-12 | 2019-07-30 | 平安科技(深圳)有限公司 | 管理灰度发布的方法、系统、设备及存储介质 |
WO2021051541A1 (zh) * | 2019-09-18 | 2021-03-25 | 平安科技(深圳)有限公司 | 基于微服务框架的一起灰度方法、装置和计算机设备 |
WO2021109669A1 (zh) * | 2019-12-05 | 2021-06-10 | 华为技术有限公司 | 恶意域名访问的检测方法、装置及计算机可读存储介质 |
CN113010811A (zh) * | 2019-12-20 | 2021-06-22 | 北京百度网讯科技有限公司 | 网页获取方法、装置、电子设备及计算机可读存储介质 |
CN111338967A (zh) * | 2020-03-09 | 2020-06-26 | 京东数字科技控股有限公司 | 一种分流测试方法、装置、电子设备及存储介质 |
CN111914194A (zh) * | 2020-07-02 | 2020-11-10 | 网联清算有限公司 | 一种业务系统变更方法、装置、电子设备及存储介质 |
CN112000348A (zh) * | 2020-07-28 | 2020-11-27 | 金蝶医疗软件科技有限公司 | 服务灰度发布的控制方法、装置、计算机设备 |
CN112114869A (zh) * | 2020-09-18 | 2020-12-22 | 聚好看科技股份有限公司 | 一种服务器、灰度发布方法、装置及介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022174A (zh) * | 2022-06-20 | 2022-09-06 | 北京奇艺世纪科技有限公司 | 一种请求处理方法、装置、可读存储介质及电子设备 |
CN115022174B (zh) * | 2022-06-20 | 2024-03-26 | 北京奇艺世纪科技有限公司 | 一种请求处理方法、装置、可读存储介质及电子设备 |
CN115361452A (zh) * | 2022-08-11 | 2022-11-18 | 上海浦东发展银行股份有限公司 | 新老系统同步运行的分流方法、系统、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110768912B (zh) | Api网关限流方法及装置 | |
CN107423883B (zh) | 待处理业务的风险识别方法及装置、电子设备 | |
CN110912734B (zh) | 云管理平台实现容器应用多维度灰度发布方法及装置 | |
EP3525410A1 (en) | Account login method, apparatus, and server | |
CN113676549A (zh) | 应用请求的分流方法及应用网关、电子设备、存储介质 | |
US10277620B2 (en) | Determining an assessment of a security breach for an asset of a network infrastructure | |
CN107276970B (zh) | 一种解绑、绑定方法和装置 | |
CN110909373A (zh) | 一种访问控制方法、设备、系统及存储介质 | |
CN110889132A (zh) | 分布式应用权限校验方法及装置 | |
CN115664743A (zh) | 行为检测方法以及装置 | |
CN113821307B (zh) | 一种虚拟机镜像的快速导入方法、装置及设备 | |
CN110764930B (zh) | 基于消息模式的请求或应答处理方法及装置 | |
CN110781500A (zh) | 一种数据风控系统以及方法 | |
CN110958278B (zh) | 基于api网关实现的数据处理方法、系统和api网关 | |
CN110830459A (zh) | 一种隐身安全代理访问方法、网关端、客户端、设备 | |
CN107679871B (zh) | 名单管理方法、装置、系统以及计算机可读存储介质 | |
CN112866265B (zh) | 一种csrf攻击防护方法及装置 | |
CN114239001A (zh) | 一种运输平台接入权限控制方法 | |
CN110928754A (zh) | 运维审计方法、装置、设备及介质 | |
CN113489778B (zh) | 访问请求的处理方法及装置、电子设备、存储介质 | |
EP4026357B1 (en) | System, method, and computer program for protecting against unintentional deletion of an esim from a mobile device | |
CN111880946B (zh) | 本地服务提供方法、装置及设备、存储介质 | |
CN111695159B (zh) | 数据的处理方法、装置及设备 | |
CN110968453A (zh) | 一种数据存储方法及装置 | |
CN110536325B (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 |