1.本发明涉及网络通信技术领域,具体涉及一种限流场景下的回流方法、装置、计算机设备及存储介质。
背景技术:2.限流在分布式系统和高并发场景有着广泛的应用。典型的限流场景有:限制某个接口一分钟内最多请求100次;限制某个用户的下载速度最多200kb/s;限制服务器上某个接口的最大服务能力为500tps等等,从而在不同场景下可以设计不同的限流规则,以保证系统不被整体拖垮。常见的限流方式有:服务降级、拒绝服务和排队等待,其中拒绝服务的限流方式是直接返回503“service unavailable”(服务不可用)进行报错。
3.由于现有拒绝服务的限流方式采用直接报错,因此难以在限流解除之后再将用户进行回流,最终导致用户流失。
技术实现要素:4.针对现有技术中所存在的不足,本发明提供一种限流场景下的回流方法、装置、计算机设备及存储介质。
5.第一方面,在一个实施例中,本发明提供一种限流场景下的回流方法,包括:
6.接收从目标服务设备跳转来的限流访问请求;限流访问请求为目标服务设备根问据接收的目标访请求在触发限流之后转发的请求;
7.根据限流访问请求,提供包含预设浏览内容的中间页面;
8.在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流。
9.第二方面,在一个实施例中,本发明提供一种限流场景下的回流装置,包括:
10.请求接收模块,用于接收从目标服务设备跳转来的限流访问请求;限流访问请求为目标服务设备根据接收的目标访问请求在触发限流之后转发的请求;
11.页面提供模块,用于根据限流访问请求,提供包含预设浏览内容的中间页面;
12.接入回流模块,用于在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流。
13.第三方面,在一个实施例中,本发明提供一种计算机设备,包括存储器和处理器;存储器存储有计算机程序,处理器用于运行存储器内的计算机程序,以执行权利要求1至7任一项所述上述任一种实施例中的限流场景下的回流方法中的步骤。
14.第四方面,在一个实施例中,本发明提供一种存储介质,存储介质存储有计算机程序,计算机程序被处理器进行加载,以执行权利要求1至7任一项所述上述任一种实施例中的限流场景下的回流方法中的步骤。
15.通过上述限流场景下的回流方法、装置、计算机设备及存储介质,预先设置限流服
务端,在限流服务端中存储包含预设浏览内容的中间页面,当用户对于目标服务设备的目标访问请求触发限流后,目标服务设备可根据该目标访问请求得到限流访问请求并将其跳转到限流服务设备,使得用户可以在限流服务设备中浏览其提供的预设浏览内容,并且在浏览的过程中可根据触发信息将该限流访问请求确定为新的目标访问请求并跳转回目标服务设备,从而实现回流,相对于现有拒绝服务的直接报错,采用预设中间页面的形式,提供一个用于回流的通道,用户能够基于该通道进行回流,降低了因限流而导致的用户流失风险。
附图说明
16.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明一个实施例中限流场景下的回流方法的应用场景示意图;
18.图2为本发明一个实施例中限流场景下的回流方法的流程示意图;
19.图3为本发明一个实施例中生成触发信息的具体流程示意图;
20.图4为本发明一个实施例中限流场景下的回流系统的结构示意图;
21.图5为本发明一个实施例中限流场景下的回流装置的结构示意图;
22.图6为本发明一个实施例中计算机设备的内部结构示意图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本技术中,“示例性”一词用来表示“用作例子、例证或说明”。本技术中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本技术所公开的原理和特征的最广
范围相一致。
25.本发明实施例中的限流场景下的回流方法应用于限流场景下的回流装置,限流场景下的回流装置设置于计算机设备;计算机设备可以是终端,例如,手机或平板电脑,计算机设备还可以是一台服务器,或者多台服务器组成的服务集群。
26.如图1所示,图1为本发明实施例限流场景下的回流方法的应用场景示意图,本发明实施例中限流场景下的回流方法的应用场景中包括计算机设备100(计算机设备100中集成有限流场景下的回流装置),计算机设备100中运行限流场景下的回流方法对应的计算机可读存储介质,以执行限流场景下的回流方法的步骤。
27.可以理解的是,图1所示限流场景下的回流方法的应用场景中的计算机设备,或者计算机设备中包含的装置并不构成对本发明实施例的限制,即,限流场景下的回流方法的应用场景中包含的设备数量、设备种类,或者各个设备中包含的装置数量、装置种类不影响本发明实施例中技术方案整体实现,均可以算作本发明实施例要求保护技术方案的等效替换或衍生。
28.本发明实施例中计算机设备100可以是独立的设备,也可以是设备组成的设备网络或设备集群,例如,本发明实施例中所描述的计算机设备100,其包括但不限于电脑、网络主机、单个网络设备、多个网络设备集或多个设备构成的云设备。其中,云设备由基于云计算(cloud computing)的大量电脑或网络设备构成。
29.本领域技术人员可以理解,图1中示出的应用场景,仅仅是与本发明的技术方案对应的一种应用场景,并不构成对本发明的技术方案的应用场景的限定,其他的应用场景还可以包括比图1中所示更多或更少的计算机设备,或者计算机设备网络连接关系,例如图1中仅示出1个计算机设备,可以理解的,该限流场景下的回流方法的场景还可以包括一个或多个其他计算机设备,具体此处不作限定;该计算机设备100中还可以包括存储器,用于存储限流场景下的回流方法相关的信息。
30.此外,本发明实施例中的限流场景下的回流方法的应用场景中计算机设备100可以设置显示装置,或者计算机设备100中不设置显示装置并与外接的显示装置200通讯连接,显示装置200用于输出计算机设备中限流场景下的回流方法执行的结果。计算机设备100可以访问后台数据库300(后台数据库300可以是计算机设备100的本地存储器,后台数据库300还可以设置在云端),后台数据库300中保存有限流场景下的回流方法相关的信息。
31.需要说明的是,图1所示的限流场景下的回流方法的应用场景仅仅是一个示例,本发明实施例描述的限流场景下的回流方法的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定。
32.基于上述限流场景下的回流方法的应用场景,提出了限流场景下的回流方法的实施例。
33.第一方面,如图2所示,在一个实施例中,本发明提供一种限流场景下的回流方法,包括:
34.步骤201,接收从目标服务设备跳转来的限流访问请求;
35.其中,限流访问请求为目标服务设备根据接收的目标访问请求在触发限流之后转发的请求;
36.其中,需要说明的是,本实施例中的限流场景下的回流方法应用于对应的限流场
景下的回流系统,该系统包括依次通信连接的用户设备、目标服务设备、限流服务设备,其中限流服务设备为限流场景下的回流方法的执行主体,也即限流服务设备对应于上述说明的限流场景下的回流方法的应用场景中的计算机设备;
37.其中,目标访问请求是由用户通过对应的用户设备发送至目标服务设备的请求,用于与目标服务设备进行交互以实现相应的服务,比如网络购物、金融业务办理等服务,而限流访问请求则是根据对应的目标访问请求得到并转发至限流服务设备的请求,也即目标访问请求是发送至目标服务设备的请求,限流访问请求是发送至限流服务设备的请求;在本实施例中,对目标访问请求和限流访问请求进行命名上的区分,仅仅是限定目标访问请求和限流访问请求出现的阶段以及涉及的服务设备有所差异,而对于目标访问请求和限流访问请求中的数据内容或类型是否有差异并无明确限定;
38.步骤202,根据限流访问请求,提供包含预设浏览内容的中间页面;
39.其中,中间页面一方面是用于提供预设浏览内容来供用户消耗因限流产生的等待时间,另一方面则是用于提供一种回流通道来使用户等待一段时间后进行回流尝试;
40.其中,中间页面可以是静态资源,比如文本、图片、视频等无需根据用户的实时请求而实时反馈的资源,也可以是需要根据用户的实时请求而实时反馈的动态资源,由于提供中间页面的限流服务设备与目标服务设备之间是相互独立,因此在限流服务设备上任何操作都不会对目标服务设备造成影响,因此中间页面可以是静态资源和/或动态资源;
41.其中,当中间页面为静态资源时,中间页面可以是cdn(content delivery network,内容分发网络)静态页面,对应的限流服务设备则是作为cdn节点的边缘服务器;以cdn的方式来提供静态资源,使得静态资源能够预先存储在多个cdn节点中,从而用户能够就近获取该静态资源,也即实现了静态资源的加速,以进一步提高用户体验;
42.步骤203,在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流;
43.其中,在提供中间页面之后,用户可在该中间页面中查看预设浏览内容,以此来消耗当前的等待时间,相对于现有拒绝服务的直接报错,对用户更加友好,使用户有耐心继续等待,提高了用户在其发送至目标服务设备的目标访问请求触发限流后的使用体验;
44.其中,触发信息表征为当前需要将用户的限流访问请求确定为新的目标访问请求对目标服务设备进行重新尝试接入(此处的限流访问请求和新的目标方位请求之间的差异和区别可参照上述,在此不再赘述),触发信息可基于该中间页面的限流服务设备根据相关信息自动得到,也可根据用户的需要手动得到;由于回流操作需要触发信息作为响应,因此在提供中间页面之后,即对触发信息进行实时监测;
45.其中,当新的目标访问请求在目标服务设备中再次触发限流时,目标服务设备又会根据新的目标访问请求得到对应的限流访问请求并转发至限流服务设备,重复上述过程,直至成功接入;
46.其中,本实施例中的限流场景下的回流方法可以应用于网关层限流结构或应用层限流架构,在此不作限定;
47.通过上述限流场景下的回流方法,预先设置限流服务设备,在限流服务设备中存储包含预设浏览内容的中间页面,当用户对于目标服务设备的目标访问请求触发限流后,
目标服务设备可根据该目标访问请求得到限流访问请求并将其跳转到限流服务设备,使得用户可以在限流服务设备中浏览其提供的预设浏览内容,并且在浏览的过程中可根据触发信息将该限流访问请求确定为新的目标访问请求并跳转回目标服务设备,从而实现回流,相对于现有拒绝服务的直接报错,采用预设中间页面的形式,提供一个用于回流的通道,用户能够基于该通道进行回流,降低了因限流而导致的用户流失风险。
48.在一个实施例中,获取用于回流的触发信息,包括:
49.接收限流事件集;限流事件集包括多个限流事件,每个限流事件根据对应的限流访问请求生成得到;
50.其中,每个限流事件都记录了对应的限流访问请求的相关信息,比如请求的自身信息和时间信息等,其中自身信息又可以包括用户的id或名称、以及使用的ip地址;对应的,限流事件集则记录了截至到当前的一段时间内的限流情况;
51.若限流事件集满足预设要求,则生成触发信息;
52.其中,限流事件集中包含各种可用信息,从而能够采用不同的分析策略来进行分析,进而判断是否需要生成触发信息来进行回流尝试;具体的,可根据限流事件集中的时间信息,来确定截至到当前的一段时间内出现限流的频率,进而判断当前是否还为流量高峰,若不为流量高峰,即可生成触发信息。
53.在一个实施例中,接收限流事件集,包括:
54.接收限流处理设备或目标服务设备发送的限流事件集;
55.其中,限流事件集可直接由目标服务设备根据每个限流访问请求处理得到,然后存储在目标服务设备中,当限流服务设备需要获取限流事件集时也对应直接从目标服务设备获取,但该方式在实际应用过程中会存在以下不足:
56.首先,对每个限流访问请求进行处理,从而得到对应的限流事件集,该处理过程需要占用目标服务设备的工作空间,由于该处理过程不涉及复杂运算,只是简单的数据提取和整理,因此占用的工作空间较小;虽然占用的工作空间较小,但对于一个限流场景下的目标服务设备,其本身就工作在较为饱和的工作状态,被占用的工作空间仍然会降低该目标服务设备触发限流的上限,整体来看,目标服务设备的服务能力还是会受到略微的影响;
57.其次,由于限流事件集是存储在目标服务设备中,因此对应的限流服务设备需要访问目标服务设备来获取其存储的限流事件集,该获取过程需要占用目标服务设备的工作空间,由于该获取过程只是简单的数据提取,因此需要的流量较小,占用的工作空间较小;虽然占用的工作空间较小,但对于一个限流场景下的目标服务设备,其本身就工作在较为饱和的工作状态,被占用的工作空间仍然会降低该目标服务设备触发限流的上限,整体来看,目标服务设备的服务能力还是会受到略微的影响;
58.最后,在某些特定场景中,比如目标服务设备为目标分布式系统,在目标分布式系统中,无论是用于内容分发的负载均衡服务器,还是用于进行服务处理的具体服务器,都存在触发限流的情况,若由目标服务设备自身来处理得到对应的限流事件集,则通常为各服务器单独处理由自身得到的限流访问请求,从而得到单独的限流事件集,各服务器的限流事件集之间相互独立;当限流服务设备根据某个单独的限流事件集进行处理,判断其满足预设要求,则会生成对应的触发信息,将对应的限流访问请求确定为新的目标访问请求,由于是分布式系统,该新的目标访问请求在尝试回流时,不一定会直接回到该限流事件对应
的具体服务器,而是先到负载均衡服务器,由其进行分配,从而可能到另外的具体服务器;在该过程中,由于只是对某个具体服务器进行回流判断,而未对该目标分布式系统进行整体判断,因此在回流时极易在实际接收的服务器中再次触发限流,从而降低了回流的成功率,并且由于每个回流尝试对于用户而言都是一次浏览打断,因此也降低了用户的体验;
59.其中,针对上述不足,在本实施例中,增设限流处理设备来对每个限流访问请求进行处理,得到限流事件集,然后存储在限流处理设备中;目标服务设备只需将得到的限流访问请求发送至限流处理设备即可,而无需再对限流访问请求进行处理;由于限流事件集存储在限流处理设备中,因此限流服务设备只需访问限流处理设备来获取限流事件集,而无需再访问目标服务设备;通过增设限流处理设备,能够解决以上不足:
60.首先,目标服务设备只需将得到的限流访问请求发送至限流处理设备即可,不需要占用目标服务设备的工作空间,不会降低该目标服务设备触发限流的上限,整体来看,目标服务设备的服务能力不会受到任何影响;
61.其次,限流服务设备只需访问限流处理设备来获取限流事件集,而无需再访问目标服务设备,不需要占用目标服务设备的工作空间,不会降低该目标服务设备触发限流的上限,整体来看,目标服务设备的服务能力不会受到任何影响;
62.最后,当目标服务设备为目标分布式系统时,限流处理设备对应于各服务器,能够获取到目标分布式系统的整体限流情况,从而得到对应整个目标分布式系统的限流事件集,当限流服务设备从限流处理设备获取到限流事件集时,能够基于该限流事件集对目标分布式系统进行整体的回流判断,因此在回流时不易在实际接收的服务器中再次触发限流,从而提高了回流的成功率,也提高了用户的体验;
63.其中,在包括限流处理设备的实施例中,限流访问请求既可从限流处理设备跳转到限流服务设备,也可直接从目标服务设备跳转到限流服务设备
64.其中,在包括限流处理设备的实施例中,限流处理设备可以为限流服务设备的一个功能模块,也即限流服务设备承担限流访问请求的处理,得到对应的限流事件。
65.如图3所示,在一个实施例中,若限流事件集满足预设要求,则生成触发信息,包括:
66.步骤301,确定限流事件集中每个限流事件各自对应的限流时间;
67.步骤302,将最新的限流时间确定为目标限流时间,确定目标限流时间与当前时间的限流时间差;
68.其中,上述实施例提到,限流事件集中的限流时间可以确定截至到当前的往前一段时间内的限流频率,从而判断当前是否流量高峰期;而在本实施例中,提出另一种基于限流时间的分析策略,限流时间不仅可以确定一段时间内的限流频率,还可以将最新的限流时间确定为目标限流时间,确定目标限流时间与当前时间的限流时间差,该限流时间差表示截至到最新的一个限流事件,已经多长时间没有触发限流;
69.步骤303,若限流时间差大于目标时间差,则生成触发信息;
70.其中,一般情况下,当目标服务设备在经过一定时间后未再次触发限流时,即可说明目标服务设备不处于流量高峰期,而目标时间差则可以作为该时间的最低限度;当限流时间差大于该目标时间差时,即可说明当前目标服务设备不处于流量高峰期,因此可生成触发信息进行回流尝试;
71.其中,需要说明的是,跳转到限流服务设备中的限流访问请求有多个,最新的限流访问请求在限流事件集中对应最新的限流时间的限流事件,基于该限流事件的限流时间生成的触发信息不一定会将该限流访问请求确定为新的目标访问请求进行回流尝试,而在通常情况下,为了保证用户之间的公平,会基于该触发信息将最旧的限流访问请求确定为新的目标访问请求进行回流尝试,而当该最新的限流访问请求在一定时间后,变为最旧的限流访问请求时,基于届时最新的限流访问请求对应的限流时间生成的触发信息再将其确定为新的目标访问请求进行回流尝试。
72.在一个实施例中,在若限流时间差大于目标时间差,则生成触发信息的步骤之前,上述限流场景下的回流方法还包括:
73.根据目标服务设备的处理效率,得到目标时间差;
74.其中,上述实施例中提到,当目标服务设备在经过一定时间后未再次触发限流时,即可说明目标服务设备不处于流量高峰期,而目标时间差则可以作为该时间的最低限度;具体的,在本实施例中,可根据目标服务设备的处理效率进行分析,比如目标服务设备每秒钟最多能够处理100个请求,即每10ms处理一个请求,当目标服务设备触发限流时,说明目标服务设备目前正处于最大工作状态,即每10ms处理一个请求,此时目标服务设备只能在完成一个请求的处理后才能接入下一个请求,也即,目标服务设备最多在10ms后,就能够接入下一个请求,需要注意的是,该10ms是最大值,可以理解为触发限流时目标服务设备刚开始处理某个请求,但通常情况下,触发限流时目标服务设备已经处理了某个请求一段时间了,比如5ms等,若限流服务设备在10ms后才生成触发信息进行回流尝试,这期间会存在10-5=5ms的空白期,而这个5ms的空白期可能会被其他由用户直接发送的目标访问请求抢占,导致回流失败,因此为了提高了回流的成功率,可将目标时间差设置为小于10ms,比如将目标时间差设置为5ms。
75.在一个实施例中,获取用于回流的触发信息,包括:
76.获取输入的重试指令,将重试指令确定为触发信息;
77.其中,上述实施例中的触发信息是由限流服务设备根据相关信息采用对应的分析策略自动生成,而在本实施例中,用户可根据自身需求进行手动生成;具体的,用户可通过相关输入设备来输入对应的重试指令,获取到该重试指令后,直接将其作为手动生成的触发信息;
78.其中,重试指令可以是输入特定文本或语音的指令,比如用户可在提供的编辑区中输入“重试”的文本,还可以通过语音组件输入一段“重试”的语音;
79.通过重试指令,能够使用户更加灵活的进行回流尝试。
80.在一个实施例中,获取输入的重试指令,包括:
81.获取通过操作中间页面上的按钮生成的重试指令;
82.其中,按钮是预先设置在中间页面上的一个虚拟按钮,用于可通过“双击”、“拖拽”以及“缩放”的方式来对该按钮进行操作,从而得到对应的重试指令;
83.通过设置在中间页面上的按钮来实现触发信息的手动生成,由按钮和预设浏览内容都存在于中间页面上,能够在用户查看预设浏览内容的过程中实时提醒用户可进行触发信息的手动生成。
84.在一个实施例中,在将限流访问请求确定为新的目标访问请求并跳转回目标服务
设备的步骤之前,还包括:
85.获取目标服务设备的回流信息;回流信息包括网址、ip地址、链接中的至少一种;
86.其中,本实施例中的跳转是从一个设备到另一个设备,因此跳转需要基于目的地的相关信息,目标服务设备是基于限流服务设备的限流信息进行限流跳转,限流信息包括网址、ip地址、链接中的至少一种,同理的,限流服务设备是基于目标服务设备的回流信息进行回流跳转,回流信息包括网址、ip地址、链接中的至少一种;
87.其中,当目标服务设备为一个服务器,且与限流服务设备相对固定,则回流信息可直接预设在限流服务设备中,当目标服务设备为多个服务器,则对应有多个回流信息,则目标服务设备可将自身的回流信息添加到对应的限流访问请求中,当限流服务设备接收到该限流访问请求时,即可将其中的回流信息提取,便于后续将该限流访问请求确定为新的目标访问请求进行回流尝试;
88.将限流访问请求确定为新的目标访问请求并跳转回目标服务设备进行接入回流,包括:
89.基于回流信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备。
90.为了使上述实施例的技术方案更加清楚,现举例说明,在一个实施例中,如图4所示:
91.用户设备发送目标访问请求至目标服务设备(目标服务设备包括负载均衡slb、多个web服务器),当目标访问请求在目标服务设备中触发限流时,目标服务设备根据目标访问请求得到对应的限流访问请求并将其发送至限流处理设备,限流处理设备接收该限流访问请求并进行处理得到对应的限流事件并存储,然后限流处理设备将该限流访问请求发送至限流服务设备,限流服务设备提供一个包含预设浏览内容和“重试按钮”的cdn静态中间页,限流服务设备可根据限流处理设备记录的限流事件确定当前的流量情况,从而自动将对应的限流访问请求确定为新的目标访问请求进行自动回流尝试,限流服务设备也可根据用户对cdn静态中间页中的“重试按钮”的操作将对应的限流访问请求确定为新的目标访问请求进行手动回流尝试,若回流尝试仍然触发限流,则重复上述过程,直至回流成功。
92.第二方面,如图5所示,在一个实施例中,本发明提供一种限流场景下的回流装置,包括:
93.请求接收模块501,用于接收从目标服务设备跳转来的限流访问请求;限流访问请求为目标服务设备根据接收的目标访问请求在触发限流之后转发的请求;
94.页面提供模块502,用于根据限流访问请求,提供包含预设浏览内容的中间页面;
95.接入回流模块503,用于在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流。
96.通过上述限流场景下的回流装置,预先设置限流服务设备,在限流服务设备中存储包含预设浏览内容的中间页面,当用户对于目标服务设备的目标访问请求触发限流后,目标服务设备可根据该目标访问请求得到限流访问请求并将其跳转到限流服务设备,使得用户可以在限流服务设备中浏览其提供的预设浏览内容,并且在浏览的过程中可根据触发信息将该限流访问请求确定为新的目标访问请求并跳转回目标服务设备,从而实现回流,
相对于现有拒绝服务的直接报错,采用预设中间页面的形式,提供一个用于回流的通道,用户能够基于该通道进行回流,降低了因限流而导致的用户流失风险。
97.在一个实施例中,
98.接入回流模块具体用于接收限流事件集;限流事件集包括多个限流事件,每个限流事件根据对应的限流访问请求生成得到;若限流事件集满足预设要求,则生成触发信息。
99.在一个实施例中,接入回流模块还具体用于接收限流处理设备或目标服务设备发送的限流事件集。
100.在一个实施例中,接入回流模块还具体用于确定限流事件集中每个限流事件各自对应的限流时间;将最新的限流时间确定为目标限流时间,确定目标限流时间与当前时间的限流时间差;若限流时间差大于目标时间差,则并生成触发信息。
101.在一个实施例中,接入回流模块具体用于获取输入的重试指令,将重试指令确定为触发信息。
102.在一个实施例中,接入回流模块还具体用于获取通过操作中间页面上的按钮生成的重试指令。
103.在一个实施例中,上述限流场景下的回流装置还包括:
104.回流信息获取模块,用于在将限流访问请求确定为新的目标访问请求并跳转回目标服务设备的步骤之前,获取目标服务设备的回流信息;回流信息包括网址、ip地址、链接中的至少一种;
105.接入回流模块具体用于基于回流信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备。
106.第三方面,在一个实施例中,本发明提供一种计算机设备,如图6所示,其示出了本发明所涉及的计算机设备的结构,具体来讲:
107.该计算机设备可以包括一个或者一个以上处理核心的处理器601、一个或一个以上计算机可读存储介质的存储器602、电源603和输入单元604等部件。本领域技术人员可以理解,图6中示出的计算机设备的结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
108.处理器601是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器601可包括一个或多个处理核心;优选的,处理器601可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和计算机程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。
109.存储器602可用于存储软件程序以及模块,处理器601通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的计算机程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以
包括存储器控制器,以提供处理器601对存储器602的访问。
110.计算机设备还包括给各个部件供电的电源603,优选的,电源603可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源603还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
111.该计算机设备还可包括输入单元604,该输入单元604可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆程、光学或者轨迹球信号输入。
112.尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器601会按照如下的指令,将一个或一个以上的计算机序的进程对应的可执行文件加载到存储器602中,并由处理器601来运行存储在存储器602中的计算机程序,以执行如下步骤:
113.接收从目标服务设备跳转来的限流访问请求;限流访问请求为目标服务设备根问据接收的目标访请求在触发限流之后转发的请求;
114.根据限流访问请求,提供包含预设浏览内容的中间页面;
115.在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流。
116.通过上述计算机设备,预先设置限流服务设备,在限流服务设备中存储包含预设浏览内容的中间页面,当用户对于目标服务设备的目标访问请求触发限流后,目标服务设备可根据该目标访问请求得到限流访问请求并将其跳转到限流服务设备,使得用户可以在限流服务设备中浏览其提供的预设浏览内容,并且在浏览的过程中可根据触发信息将该限流访问请求确定为新的目标访问请求并跳转回目标服务设备,从而实现回流,相对于现有拒绝服务的直接报错,采用预设中间页面的形式,提供一个用于回流的通道,用户能够基于该通道进行回流,降低了因限流而导致的用户流失风险。
117.本领域普通技术人员可以理解,上述实施例的任一种方法中的全部或部分步骤可以通过计算机程序来完成,或通过计算机程序控制相关的硬件来完成,该计算机程序可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
118.第四方面,在一个实施例中,本发明提供一种存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行如下步骤:
119.接收从目标服务设备跳转来的限流访问请求;限流访问请求为目标服务设备根问据接收的目标访请求在触发限流之后转发的请求;
120.根据限流访问请求,提供包含预设浏览内容的中间页面;
121.在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流。
122.通过上述存储介质,预先设置限流服务设备,在限流服务设备中存储包含预设浏览内容的中间页面,当用户对于目标服务设备的目标访问请求触发限流后,目标服务设备可根据该目标访问请求得到限流访问请求并将其跳转到限流服务设备,使得用户可以在限流服务设备中浏览其提供的预设浏览内容,并且在浏览的过程中可根据触发信息将该限流访问请求确定为新的目标访问请求并跳转回目标服务设备,从而实现回流,相对于现有拒
绝服务的直接报错,采用预设中间页面的形式,提供一个用于回流的通道,用户能够基于该通道进行回流,降低了因限流而导致的用户流失风险。
123.本领域普通技术人员可以理解,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
124.由于该存储介质中所存储的计算机程序,可以执行本发明所提供的任一种实施例中的限流场景下的回流方法中的步骤,因此,可以实现本发明所提供的任一种实施例中的限流场景下的回流方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
125.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
126.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
127.以上对本发明所提供的一种限流场景下的回流方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
128.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
技术特征:1.一种限流场景下的回流方法,其特征在于,包括:接收从目标服务设备跳转来的限流访问请求;所述限流访问请求为所述目标服务设备根据接收的目标访问请求在触发限流之后转发的请求;根据所述限流访问请求,提供包含预设浏览内容的中间页面;在提供所述中间页面之后,获取用于回流的触发信息,根据所述触发信息,将所述限流访问请求确定为新的目标访问请求并跳转回所述目标服务设备,以使所述目标服务设备进行接入回流。2.根据权利要求1所述的限流场景下的回流方法,其特征在于,所述获取用于回流的触发信息,包括:接收限流事件集;所述限流事件集包括多个限流事件,每个所述限流事件根据对应的限流访问请求生成得到;若所述限流事件集满足预设要求,则生成所述触发信息。3.根据权利要求2所述的限流场景下的回流方法,其特征在于,所述接收限流事件集,包括:接收限流处理设备或所述目标服务设备发送的所述限流事件集。4.根据权利要求2或3所述的限流场景下的回流方法,其特征在于,所述若所述限流事件集满足预设要求,则生成所述触发信息,包括:确定所述限流事件集中每个所述限流事件各自对应的限流时间;将最新的限流时间确定为目标限流时间,确定所述目标限流时间与当前时间的限流时间差;若所述限流时间差大于目标时间差,则生成所述触发信息。5.根据权利要求1所述的限流场景下的回流方法,其特征在于,所述获取用于回流的触发信息,包括:获取输入的重试指令,将所述重试指令确定为所述触发信息。6.根据权利要求5所述的限流场景下的回流方法,其特征在于,所述获取输入的重试指令,包括:获取通过操作所述中间页面上的按钮生成的所述重试指令。7.根据权利要求1所述的限流场景下的回流方法,其特征在于,在所述将所述限流访问请求确定为新的目标访问请求并跳转回所述目标服务设备的步骤之前,还包括:获取所述目标服务设备的回流信息;所述回流信息包括网址、ip地址、链接中的至少一种;所述将所述限流访问请求确定为新的目标访问请求并跳转回所述目标服务设备进行接入回流,包括:基于所述回流信息,将所述限流访问请求确定为新的目标访问请求并跳转回所述目标服务设备。8.一种限流场景下的回流装置,其特征在于,包括:请求接收模块,用于接收从目标服务设备跳转来的限流访问请求;所述限流访问请求为所述目标服务设备根据接收的目标访问请求在触发限流之后转发的请求;页面提供模块,用于根据所述限流访问请求,提供包含预设浏览内容的中间页面;
接入回流模块,用于在提供所述中间页面之后,获取用于回流的触发信息,根据所述触发信息,将所述限流访问请求确定为新的目标访问请求并跳转回所述目标服务设备,以使所述目标服务设备进行接入回流。9.一种计算机设备,其特征在于,包括存储器和处理器;所述存储器存储有计算机程序,所述处理器用于运行所述存储器内的所述计算机程序,以执行权利要求1至7任一项所述的限流场景下的回流方法中的步骤。10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的限流场景下的回流方法中的步骤。
技术总结本发明提供一种限流场景下的回流方法、装置、计算机设备及存储介质,包括:接收从目标服务设备跳转来的限流访问请求;限流访问请求为目标服务设备根问据接收的目标访请求在触发限流之后转发的请求;根据限流访问请求,提供包含预设浏览内容的中间页面;在提供中间页面之后,获取用于回流的触发信息,根据触发信息,将限流访问请求确定为新的目标访问请求并跳转回目标服务设备,以使目标服务设备进行接入回流。预先设置限流服务设备,在限流服务设备中存储包含预设浏览内容的中间页面,相对于现有拒绝服务的直接报错,采用预设中间页面的形式,提供一个用于回流的通道,用户能够基于该通道进行回流,降低了因限流而导致的用户流失风险。风险。风险。
技术研发人员:王耀峰
受保护的技术使用者:平安银行股份有限公司
技术研发日:2022.06.16
技术公布日:2022/11/1