流量控制方法、装置、设备、介质及产品与流程
未命名
07-26
阅读:259
评论:0
1.本技术涉及数据处理技术领域,尤其涉及一种流量控制方法、装置、设备、介质及产品。
背景技术:
2.流控即流量控制是利用软件或硬件方式来实现对网络数据流量进行控制的一种措施。在金融领域中,一般包括前端应用和后端应用,前端应用根据与用户之间的交互生成对应的请求。后端应用响应前端应用的请求,并根据各种请求进行对应处理。
3.目前为了避免后端应用被瞬时的流量高峰冲垮,提高后端应用的稳定性,会对前端应用进行流量控制。然而,目前的流量控制方式,仅针对请求进行限制,流量控制的精细度较低。
技术实现要素:
4.本技术提供一种流量控制方法、装置、设备、介质及产品,用以解决目前的流量控制方式,仅针对请求进行限制,流量控制的精细度较低的问题。
5.本技术第一方面提供一种流量控制方法,包括:
6.在处于流量控制状态时,获取前端应用被拦截的待处理请求;
7.判断待处理请求中是否包括与预设限制参数相同的参数;
8.若确定待处理请求包括与预设限制参数相同的参数,拒绝所述待处理请求;
9.若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
10.进一步地,如上所述的方法,所述待处理请求包括:xml可扩展标记语言请求报文和json请求报文;
11.所述获取前端应用被拦截的待处理请求,包括:
12.拦截前端应用发送的xml可扩展标记语言请求报文和json请求报文。
13.进一步地,如上所述的方法,所述判断待处理请求中是否包括与预设限制参数相同的参数,包括:
14.采用栈内存进行如下处理:
15.若前端应用发送的为xml可扩展标记语言请求报文,则基于预设流控数据库中存储的预设xml配置文件判断xml可扩展标记语言请求报文中是否包括与预设限制参数相同的参数;
16.若前端应用发送的为json请求报文,则基于预设流控数据库中存储的预设json配置文件判断json请求报文中是否包括与预设限制参数相同的参数;所述预设限制参数为单个参数、多个参数构成的复合参数或单个参数的部分内容。
17.进一步地,如上所述的方法,所述在处于流量控制状态时之前,包括:
18.判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值;
19.若确定所述并发请求数量大于或等于预设数量阈值,则基于预设xml配置文件和预设json配置文件开启流量控制状态。
20.进一步地,如上所述的方法,所述判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值之前,还包括:
21.响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件;所述预设xml配置文件和预设json配置文件都包括:流控开关参数、预设限制参数、栈配置参数、配置文件路径和配置文件标识。
22.进一步地,如上所述的方法,所述响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件之后,还包括:
23.对预设xml配置文件和预设json配置文件进行注册处理,以将预设xml配置文件和预设json配置文件保存在预设流控数据库中。
24.进一步地,如上所述的方法,所述方法还包括:
25.响应于用户对预设xml配置文件和/或预设json配置文件中预设限制参数的修改操作,生成修改后的预设限制参数;
26.所述判断待处理请求中是否包括与预设限制参数相同的参数,包括:
27.采用栈内存进行如下判断处理:
28.判断待处理请求中是否包括与修改后的预设限制参数相同的参数。
29.本技术第二方面提供一种流量控制装置,包括:
30.获取模块,用于在处于流量控制状态时,获取前端应用被拦截的待处理请求;
31.判断模块,用于判断待处理请求中是否包括与预设限制参数相同的参数;
32.拒绝模块,用于若确定待处理请求包括与预设限制参数相同的参数,拒绝所述待处理请求;
33.处理模块,用于若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
34.进一步地,如上所述的装置,所述待处理请求包括:xml可扩展标记语言请求报文和json请求报文;
35.所述获取模块具体用于:
36.拦截前端应用发送的xml可扩展标记语言请求报文和json请求报文。
37.进一步地,如上所述的装置,所述判断模块具体用于:
38.采用栈内存进行如下处理:若前端应用发送的为xml可扩展标记语言请求报文,则基于预设流控数据库中存储的预设xml配置文件判断xml可扩展标记语言请求报文中是否包括与预设限制参数相同的参数;若前端应用发送的为json请求报文,则基于预设流控数据库中存储的预设json配置文件判断json请求报文中是否包括与预设限制参数相同的参数;所述预设限制参数为单个参数、多个参数构成的复合参数或单个参数的部分内容。
39.进一步地,如上所述的装置,所述装置还包括:
40.开启模块,用于判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值;若确定所述并发请求数量大于或等于预设数量阈值,则基于预设xml配置文件和预设json配置文件开启流量控制状态。
41.进一步地,如上所述的装置,所述装置还包括:
42.生成模块,用于响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件;所述预设xml配置文件和预设json配置文件都包括:流控开关参数、预设限制参数、栈配置参数、配置文件路径和配置文件标识。
43.进一步地,如上所述的装置,所述装置还包括:
44.注册模块,用于对预设xml配置文件和预设json配置文件进行注册处理,以将预设xml配置文件和预设json配置文件保存在预设流控数据库中。
45.进一步地,如上所述的装置,所述装置还包括:
46.修改模块,用于响应于用户对预设xml配置文件和/或预设json配置文件中预设限制参数的修改操作,生成修改后的预设限制参数;
47.所述判断模块具体用于:
48.采用栈内存进行如下判断处理:判断待处理请求中是否包括与修改后的预设限制参数相同的参数。
49.本技术第三方面提供一种电子设备,包括:存储器和处理器;
50.所述存储器存储计算机执行指令;
51.所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面任一项所述的流量控制方法。
52.本技术第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面任一项所述的流量控制方法。
53.本技术第五方面提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面任一项所述的流量控制方法。
54.本技术提供的一种流量控制方法、装置、设备、介质及产品,该方法包括:在处于流量控制状态时,获取前端应用被拦截的待处理请求;判断待处理请求中是否包括与预设限制参数相同的参数;若确定待处理请求包括与预设限制参数相同的参数,拒绝所述待处理请求;若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。本技术的流量控制方法,对于前端应用被拦截的待处理请求,可以根据待处理请求中是否包括与预设限制参数相同的参数进行对应处理,从而基于参数级层面提高流控精确度,同时,预设限制参数可以预先设置,灵活性较强。
附图说明
55.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
56.图1为可以实现本技术实施例的流量控制方法的场景图;
57.图2为本技术提供的流量控制方法的流程示意图一;
58.图3为本技术提供的流量控制方法的流程示意图二;
59.图4为本技术提供的流量控制装置的结构示意图一;
60.图5为本技术提供的流量控制装置的结构示意图二;
61.图6为本技术提供的电子设备的结构示意图。
62.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图
和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
63.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
64.本技术实施例的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
65.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
66.需要说明的是,本公开流量控制方法、装置、设备、介质及产品可用于数据处理技术领域。也可用于除数据处理技术领域以外的任意领域。本公开流量控制方法、装置、设备、介质及产品应用领域不作限定。
67.下面以具体地实施例对本技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
68.为了清楚理解本技术的技术方案,首先对现有技术的方案进行详细介绍。目前,在金融领域中,前端应用是用户界面的一个应用层,它综合了不同技术,借助它可以创建管理和平台的交互界面用来完成各种用户任务。前端服务器将前端应用的请求发送至后端服务器,后端服务器的后端应用响应前端应用的请求,并根据各种请求进行对应处理。目前为了避免后端应用被瞬时的流量高峰冲垮,提高后端应用的稳定性,会对前端应用进行流量控制。然而,目前的流量控制方式,仅针对请求进行限制,流量控制的精细度较低。
69.所以针对现有技术中由于目前的流量控制方式,仅针对请求进行限制,流量控制的精细度较低的问题,发明人在研究中发现,为了解决该问题,可以从参数层面着手,基于请求中的参数,对待处理请求进行对应限制,从而提高流量控制的精细度。
70.具体的,在处于流量控制状态时,获取前端应用被拦截的待处理请求。判断待处理请求中是否包括与预设限制参数相同的参数。若确定待处理请求包括与预设限制参数相同的参数,拒绝待处理请求。若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
71.本技术的流量控制方法,对于前端应用被拦截的待处理请求,可以根据待处理请求中是否包括与预设限制参数相同的参数进行对应处理,从而基于参数级层面提高流控精确度,同时,预设限制参数可以预先设置,灵活性较强。
72.发明人基于上述的创造性发现,提出了本技术的技术方案。
73.下面对本技术实施例提供的流量控制方法的应用场景进行介绍。如图1所示,其
中,1为第一电子设备,2为第二电子设备。本技术实施例提供的流量控制方法对应的应用场景的网络架构中包括:第一电子设备1和第二电子设备2。第一电子设备1可以为后端应用服务器,第二电子设备2可以为前端应用服务器。
74.示例性的,第二电子设备2中的前端应用生成待处理请求之后,第二电子设备2将待处理请求发送至第一电子设备1。第一电子设备1在检测到待处理请求过多,正处于高峰期并发状态时,开启流量控制状态。此时,第一电子设备1判断待处理请求中是否包括与预设限制参数相同的参数,若确定待处理请求包括与预设限制参数相同的参数,拒绝待处理请求。在拒绝待处理请求后,可以发送异常信息至第二电子设备2,以使第二电子设备2知晓本次请求处理结果为异常。若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。在将待处理请求进入等待处理队列后,可以按照预设处理间隔时间,依次对处于等待处理队列的待处理请求进行对应处理。
75.下面结合说明书附图对本技术实施例进行介绍。
76.图2为本技术提供的流量控制方法的流程示意图一,如图2所示,本实施例中,本技术实施例的执行主体为流量控制装置,该流量控制装置可以集成在电子设备中。则本实施例提供的流量控制方法包括以下几个步骤:
77.步骤s101,在处于流量控制状态时,获取前端应用被拦截的待处理请求。
78.本实施例中,一般在检测当前处于流量高峰时,进入流量控制状态。流量控制状态指正在进行流量控制的状态。流量控制可以根据流量、并发线程数、响应时间等指标,把随机到来的流量调整成合适的形状,避免应用被瞬时的流量高峰冲垮,从而保障应用的高可用性。
79.步骤s102,判断待处理请求中是否包括与预设限制参数相同的参数。
80.本实施例中,预设限制参数可以预先进行设置,可以为单一参数,也可以为多个参数组成的复合参数,也可以为参数的部分内容。预设限制参数可以为请求的发送地址信息、请求包含的用户信息等,可以根据实际应用进行选择,本实施例对此不作限定。
81.预设限制参数可以预先编写在预设配置文件中,在进入流量控制状态时,基于预设配置文件读取对应预设限制参数。
82.步骤s103,若确定待处理请求包括与预设限制参数相同的参数,拒绝待处理请求。
83.本实施例中,当待处理请求包括与预设限制参数相同的参数时,说明该待处理请求应该进行限制,从而拒绝该待处理请求,优先对其他待处理请求进行处理。
84.在拒绝待处理请求时,可以进一步反馈异常信息至前端应用。常用的方式包括快速失败和warm up(预热)。
85.步骤s104,若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
86.本实施例中,等待处理队列中的待处理请求,会按照允许的时间间隔依次执行。后来的请求必须等待前面执行完成。
87.本技术实施例提供的一种流量控制方法,该方法包括:在处于流量控制状态时,获取前端应用被拦截的待处理请求。判断待处理请求中是否包括与预设限制参数相同的参数。若确定待处理请求包括与预设限制参数相同的参数,拒绝待处理请求。若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
88.本技术的流量控制方法,对于前端应用被拦截的待处理请求,可以根据待处理请求中是否包括与预设限制参数相同的参数进行对应处理,从而基于参数级层面提高流控精确度,同时,预设限制参数可以预先设置,灵活性较强。
89.图3为本技术提供的流量控制方法的流程示意图二,如图3所示,本实施例提供的流量控制方法,是在本技术上一实施例提供的流量控制方法的基础上,进行了进一步的细化。则本实施例提供的流量控制方法包括以下步骤。
90.需要说明的是,待处理请求包括:xml可扩展标记语言请求报文和json请求报文。
91.步骤s201,在处于流量控制状态时,拦截前端应用发送的xml可扩展标记语言请求报文和json请求报文。
92.本实施例中,xml(英文全称为:extensible markup language,中文为:可扩展标记语言),是一种允许用户对自己的标记语言进行定义的源语言。json(英文全称为:javascript object notation,中文为:js对象简谱)是一种轻量级的数据交换格式。通过对xml可扩展标记语言请求报文和json请求报文的支持,可以提高流量控制的适用层面。
93.可选的,本实施例中,在进行流量控制之前,需要对流量控制进行配置和初始化,具体流程如下:
94.响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件。预设xml配置文件和预设json配置文件都包括:流控开关参数、预设限制参数、栈配置参数、配置文件路径和配置文件标识。
95.用户在编写时,可以针对栈、流控开关、预设限制参数等进行设置。具体如下:
96.xml配置文件:
97.处理栈配置:在配置文件中配置处理栈的节点,使流控开启,反之则关闭。
98.请求接入开关配置:在配置文件中配置请求接入开关,默认是关闭,不配置亦是关闭。
99.外呼流控开关配置:在配置文件中配置外呼开关,默认是关闭,不配置亦是关闭。
100.请求接入流控xml配置文件名字及路径配置:在配置文件中配置请求xml文件名字及路径,默认是关闭,不配置亦是关闭。
101.外呼流控xml配置文件名字及路径配置:在配置文件中配置请求xml文件名字及路径,默认是关闭,不配置亦是关闭。
102.外呼处理栈配置:在配置文件中配置外呼处理栈,不配置则是关闭,外呼流控不生效。
103.json配置文件:
104.流控总开关配置:在配置文件中配置总开关,使流控开启,反之则关闭。
105.请求接入流控开关配置:在配置文件中配置请求接入开关,默认是关闭,不配置亦是关闭。
106.外呼流控开关配置:在配置文件中配置外呼开关,默认是关闭,不配置亦是关闭。
107.请求接入流控xml配置文件名字及路径配置:在配置文件中配置请求xml文件名字及路径,默认是关闭,不配置亦是关闭。
108.外呼流控xml配置文件名字及路径配置:在配置文件中配置请求xml文件名字及路径,默认是关闭,不配置亦是关闭。
109.外呼处理栈配置:在配置文件中配置外呼处理栈,不配置则是关闭,外呼流控不生效。
110.本实施例中,通过参数的自由配置,限制高峰期的并发,保证服务的稳定性,通过简单的配置可以方便的控制请求接入的并发,外呼的并发,通过简单的配置可以对xml请求报文和json请求报文进行流控限制,通过简单的配置可以对流控进行开启关闭,通过简单的配置可以自由定义配置文件路径,通过简单的实现及配置可以自定义流控策略进行流控。使用更方便。
111.可选的,本实施例中,响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件之后,还可以进行配置文件注册处理:
112.对预设xml配置文件和预设json配置文件进行注册处理,以将预设xml配置文件和预设json配置文件保存在预设流控数据库中。
113.针对预设xml配置文件和预设json配置文件中的各种参数设置进行注册,其中,预设xml配置文件和预设json配置文件中还可以设置无需进行限制的参数,进一步细分流量控制。比如可以细分为故障隔离、免流控、全局流控,故障隔离属于完全限制的,免流控属于不需要限制,全局流控属于可限制也可不限制的。预设限制参数一般注册时,属于全局流控。
114.可选的,本实施例中,在处于流量控制状态时之前,包括:
115.判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值。
116.若确定并发请求数量大于或等于预设数量阈值,则基于预设xml配置文件和预设json配置文件开启流量控制状态。
117.并发请求数量大于或等于预设数量阈值时,说明此时处于流量高峰期,需要进行流量控制。
118.步骤s202,采用栈内存进行如下处理:若前端应用发送的为xml可扩展标记语言请求报文,则基于预设流控数据库中存储的预设xml配置文件判断xml可扩展标记语言请求报文中是否包括与预设限制参数相同的参数。
119.步骤s203,采用栈内存进行如下处理:若前端应用发送的为json请求报文,则基于预设流控数据库中存储的预设json配置文件判断json请求报文中是否包括与预设限制参数相同的参数。
120.本实施例中,采用栈内存进行数据处理,可以方便后续用户在改动预设限制参数时,流控处理进行对应变化的响应效率。
121.步骤s204,若确定待处理请求包括与预设限制参数相同的参数,拒绝待处理请求。
122.本实施例中,步骤204的实现方式与上一实施例的步骤103的实现方式类似,在此不再一一赘述。
123.步骤s205,若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
124.本实施例中,步骤205的实现方式与上一实施例的步骤104的实现方式类似,在此不再一一赘述。
125.可选的,本实施例中,还可以在运行态修改流控数值,以即时修改流量控制针对的请求,具体如下:
126.响应于用户对预设xml配置文件和/或预设json配置文件中预设限制参数的修改操作,生成修改后的预设限制参数。
127.此时,判断待处理请求中是否包括与预设限制参数相同的参数的步骤可以具体为:
128.采用栈内存进行如下判断处理:
129.判断待处理请求中是否包括与修改后的预设限制参数相同的参数。
130.本实施例中,可以在运行态自由修改流控数值,仅需要通过修改预设xml配置文件和/或预设json配置文件即可,不需要重启服务,相比现有技术中运行态修改流控数值需要借助第三方软件的方式,提高了运行态修改流控数值的效率以及使用方便性。
131.在用户对预设xml配置文件和/或预设json配置文件中预设限制参数的进行修改后,可以根据修改后的预设限制参数实行流量控制。
132.本实施例的方法可以较方便的进行动态修改流量控制,可以根据实际需求针对运行态的服务进行流量控制修改,且不需要重启服务,大大增加了系统稳定性。同时,流量控制的颗粒度更小,可以从参数层面进行流量控制,支持复合参数流控。同时,本实施例的方法使用简单,仅通过配置文件即可实现流量控制。
133.图4为本技术提供的流量控制装置的结构示意图一,如图4所示,本实施例中,该流量控制装置300可以设置在电子设备中,流量控制装置300包括:
134.获取模块301,用于在处于流量控制状态时,获取前端应用被拦截的待处理请求。
135.判断模块302,用于判断待处理请求中是否包括与预设限制参数相同的参数。
136.拒绝模块303,用于若确定待处理请求包括与预设限制参数相同的参数,拒绝待处理请求。
137.处理模块304,用于若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。
138.本实施例提供的流量控制装置可以执行图2所示方法实施例的技术方案,其实现原理和技术效果与图2所示方法实施例类似,在此不再一一赘述。
139.图5为本技术提供的流量控制装置的结构示意图二,本技术提供的流量控制装置在上一实施例提供的流量控制装置的基础上,对流量控制装置进行了进一步的细化,为了更好的进行说明,本实施例的流量控制装置采用流量控制装置400进行示例性说明,则流量控制装置400包括:
140.可选的,本实施例中,待处理请求包括:xml可扩展标记语言请求报文和json请求报文。
141.获取模块301具体用于:
142.拦截前端应用发送的xml可扩展标记语言请求报文和json请求报文。
143.可选的,本实施例中,判断模块302具体用于:
144.采用栈内存进行如下处理:若前端应用发送的为xml可扩展标记语言请求报文,则基于预设流控数据库中存储的预设xml配置文件判断xml可扩展标记语言请求报文中是否包括与预设限制参数相同的参数。若前端应用发送的为json请求报文,则基于预设流控数据库中存储的预设json配置文件判断json请求报文中是否包括与预设限制参数相同的参数。预设限制参数为单个参数、多个参数构成的复合参数或单个参数的部分内容。
145.可选的,本实施例中,流量控制装置400还包括:
146.开启模块401,用于判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值。若确定并发请求数量大于或等于预设数量阈值,则基于预设xml配置文件和预设json配置文件开启流量控制状态。
147.可选的,本实施例中,流量控制装置400还包括:
148.生成模块402,用于响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件。预设xml配置文件和预设json配置文件都包括:流控开关参数、预设限制参数、栈配置参数、配置文件路径和配置文件标识。
149.可选的,本实施例中,流量控制装置400还包括:
150.注册模块403,用于对预设xml配置文件和预设json配置文件进行注册处理,以将预设xml配置文件和预设json配置文件保存在预设流控数据库中。
151.可选的,本实施例中,流量控制装置400还包括:
152.修改模块404,用于响应于用户对预设xml配置文件和/或预设json配置文件中预设限制参数的修改操作,生成修改后的预设限制参数。
153.判断模块302具体用于:
154.采用栈内存进行如下判断处理:判断待处理请求中是否包括与修改后的预设限制参数相同的参数。
155.本实施例提供的流量控制装置可以执行图2-图3所示方法实施例的技术方案,其实现原理和技术效果与图2-图3所示方法实施例类似,在此不再一一赘述。
156.根据本技术的实施例,本技术还提供了一种电子设备、一种计算机可读存储介质和一种计算机程序产品。
157.如图6所示,图6是本技术提供的电子设备的结构示意图。电子设备旨在各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、刀片式服务器、大型计算机、和其它适合的计算机。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本技术的实现。
158.如图6所示,该电子设备包括:处理器501和存储器502。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理。
159.存储器502即为本技术所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本技术所提供的流量控制方法。本技术的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本技术所提供的流量控制方法。
160.存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本技术实施例中的流量控制方法对应的程序指令/模块(例如,附图4所示的获取模块301、判断模块302、拒绝模块303和处理模块304)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例中的流量控制方法。
161.同时,本实施例还提供一种计算机产品,当该计算机产品中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例的流量控制方法。
162.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术实施例的其它实施方案。本技术旨在涵盖本技术实施例的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术实施例的一般性原理并包括本技术实施例未公开的本技术领域中的公知常识或惯用技术手段。
163.应当理解的是,本技术实施例并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术实施例的范围仅由所附的权利要求书来限制。
技术特征:
1.一种流量控制方法,其特征在于,包括:在处于流量控制状态时,获取前端应用被拦截的待处理请求;判断待处理请求中是否包括与预设限制参数相同的参数;若确定待处理请求包括与预设限制参数相同的参数,拒绝所述待处理请求;若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。2.根据权利要求1所述的方法,其特征在于,所述待处理请求包括:xml可扩展标记语言请求报文和json请求报文;所述获取前端应用被拦截的待处理请求,包括:拦截前端应用发送的xml可扩展标记语言请求报文和json请求报文。3.根据权利要求2所述的方法,其特征在于,所述判断待处理请求中是否包括与预设限制参数相同的参数,包括:采用栈内存进行如下处理:若前端应用发送的为xml可扩展标记语言请求报文,则基于预设流控数据库中存储的预设xml配置文件判断xml可扩展标记语言请求报文中是否包括与预设限制参数相同的参数;若前端应用发送的为json请求报文,则基于预设流控数据库中存储的预设json配置文件判断json请求报文中是否包括与预设限制参数相同的参数;所述预设限制参数为单个参数、多个参数构成的复合参数或单个参数的部分内容。4.根据权利要求3所述的方法,其特征在于,所述在处于流量控制状态时之前,包括:判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值;若确定所述并发请求数量大于或等于预设数量阈值,则基于预设xml配置文件和预设json配置文件开启流量控制状态。5.根据权利要求4所述的方法,其特征在于,所述判断后端应用当前处理的并发请求数量是否大于或等于预设数量阈值之前,还包括:响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件;所述预设xml配置文件和预设json配置文件都包括:流控开关参数、预设限制参数、栈配置参数、配置文件路径和配置文件标识。6.根据权利要求5所述的方法,其特征在于,所述响应于用户对初始配置文件的编写输入操作,生成对应预设xml配置文件和预设json配置文件之后,还包括:对预设xml配置文件和预设json配置文件进行注册处理,以将预设xml配置文件和预设json配置文件保存在预设流控数据库中。7.根据权利要求2至6任一项所述的方法,其特征在于,所述方法还包括:响应于用户对预设xml配置文件和/或预设json配置文件中预设限制参数的修改操作,生成修改后的预设限制参数;所述判断待处理请求中是否包括与预设限制参数相同的参数,包括:采用栈内存进行如下判断处理:判断待处理请求中是否包括与修改后的预设限制参数相同的参数。8.一种流量控制装置,其特征在于,包括:
获取模块,用于在处于流量控制状态时,获取前端应用被拦截的待处理请求;判断模块,用于判断待处理请求中是否包括与预设限制参数相同的参数;拒绝模块,用于若确定待处理请求包括与预设限制参数相同的参数,拒绝所述待处理请求;处理模块,用于若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。9.一种电子设备,其特征在于,包括:存储器和处理器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至7任一项所述的流量控制方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的流量控制方法。11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述的流量控制方法。
技术总结
本申请属于数据处理技术领域,具体提供一种流量控制方法、装置、设备、介质及产品,该方法包括:在处于流量控制状态时,获取前端应用被拦截的待处理请求;判断待处理请求中是否包括与预设限制参数相同的参数;若确定待处理请求包括与预设限制参数相同的参数,拒绝所述待处理请求;若确定待处理请求不包括与预设限制参数相同的参数,则将待处理请求进入等待处理队列。本申请的流量控制方法,对于前端应用被拦截的待处理请求,可以根据待处理请求中是否包括与预设限制参数相同的参数进行对应处理,从而基于参数级层面提高流控精确度,同时,预设限制参数可以预先设置,灵活性较强。灵活性较强。灵活性较强。
技术研发人员:张纪国 杨宇鹏
受保护的技术使用者:建信金融科技有限责任公司
技术研发日:2023.04.21
技术公布日:2023/7/25
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种液体肥料高效喷洒装置及使用方法与流程 下一篇:适用于既有桥梁的玻纤套筒加固结构
