一种资源管理方法、装置、设备及存储介质
1.本发明实施例涉及计算机技术,尤其涉及一种资源管理方法、装置、设备及存储介质。
背景技术:
2.限流是分布式网关非常重要的功能,它可以防止暴力攻击,同时也可以防止业务应用因为流量过载导致无法正常服务。
3.网关面向的是互联网复杂的环境,面对庞大的流量,做到精准的限制并不难,但是做到精确的限制同时保持网关的高性能具有很高的技术挑战性。当前大多数的方案是直接采用远程字典服务(remote dictionary server,redis)集中式计数和扣减,因每次请求都需要和redis交互扣减额度,所以redis的性能问题成为瓶颈,最终拖垮网关的整体性能。
4.因此,需要探寻一种适用于分布式网关的限流方法,能够解决分布式限流网关的整体性能瓶颈问题,对网关资源进行管理,最大的发挥网关的高性能的特性。
技术实现要素:
5.本发明实施例提供一种资源管理方法、装置、设备及存储介质,能够适用于分布式网关的限流,解决分布式限流网关的整体性能瓶颈问题,最大的发挥网关的高性能特性。
6.第一方面,本发明实施例提供一种资源管理方法,应用于网关节点,资源管理方法包括:
7.接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;
8.判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;
9.若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;
10.若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。
11.进一步的,本地授权额度通过如下方式得到:
12.向中心管理设备发送额度配置请求,以使得中心管理设备根据资源总额度、授权额度占比及网关节点的额度分配权重确定网关节点的本地授权额度;
13.获取中心管理设备授予网关节点的本地授权额度。
14.进一步的,从中心管理设备申请资源以扣减目标额度,包括:
15.向中心管理设备发送额度追加请求,以使得中心管理设备根据资源总剩余额度确定额度追加策略并根据额度追加策略确定追加额度,资源总剩余额度为资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度;
16.获取中心管理设备授予网关节点的追加额度,并从追加额度中扣减目标额度。
17.第二方面,本发明实施例还提供了一种资源管理方法,应用于中心管理设备,资源管理方法包括:
18.接收网关节点发送的额度配置请求;
19.获取网关节点的额度分配权重;
20.根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度;
21.授予网关节点本地授权额度,以使得网关节点基于本地授权额度处理接收到的业务请求信息。
22.进一步的,根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度,包括:
23.将资源总额度、授权额度占比及额度分配权重相乘,得到本地授权额度。
24.进一步的,在本地授权额度不够处理业务请求信息时,方法还包括:
25.接收网关节点发送的额度追加请求;
26.确定资源总剩余额度,资源总剩余额度为资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度;
27.根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度;
28.授予网关节点追加额度,以使得网关节点基于追加额度处理业务请求信息。
29.进一步的,当资源总剩余额度不为零时,根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度,包括:
30.确定资源总剩余额度是否低于授权额度最低限值;
31.若资源总剩余额度不低于授权额度最低限值,则将资源总剩余额度、授权额度占比及额度分配权重相乘,得到追加额度;
32.若资源总剩余额度低于授权额度最低限值,则将预设授权额度确定为追加额度。
33.进一步的,当资源总剩余额度为零时,根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度,包括:
34.从其他网关节点回收资源,得到回收额度,其他网关节点为除网关节点之外的其他存在额度剩余的网关节点;
35.确定回收额度是否低于授权额度最低限值;
36.若回收额度不低于授权额度最低限值,则将回收额度、授权额度占比及额度分配权重相乘,得到追加额度;
37.若回收额度低于授权额度最低限值,则将预设授权额度确定为追加额度。
38.第三方面,本实施例还提供一种资源管理装置,包括:
39.资源确定模块,用于接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;
40.扣减判断模块,用于判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;
41.第一处理模块,用于若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;
42.第二处理模块,用于若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。
43.第四方面,本实施例还提供一种资源管理装置,包括:
44.接收模块,用于接收网关节点发送的额度配置请求;
45.获取模块,用于获取网关节点的额度分配权重;
46.额度确定模块,用于根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度;
47.额度授予模块,用于授予网关节点本地授权额度,以使得网关节点基于本地授权额度处理接收到的业务请求信息。
48.第五方面,本发明实施例还提供一种资源管理系统,包括终端、服务器、用于实现本发明实施例任一项的资源管理方法的网关节点、以及用于实现本发明实施例任一项的资源管理方法的中心管理设备。
49.第六方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如本发明实施例任一项的资源管理方法。
50.第七方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例任一项的资源管理方法。
51.本发明实施例中,网关节点可以接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。即本发明实施例中,网关节点具有中心管理设备授予的资源的本地授权额度,针对接收到的业务请求信息,网关节点可以直接从本地授权额度中扣减所需额度,如果本地授权额度不够扣减,可向中心管理设备申请资源以扣减,从而避免了每个请求都需要与中心管理设备进行交互,减少了与中心管理设备的交互次数,避免了中心管理设备成为性能瓶颈,提高了网关系统的整体性能。
附图说明
52.图1为本发明实施例的资源管理方法的一个流程示意图;
53.图2是本发明实施例的资源管理方法的另一流程示意图;
54.图3是本发明实施例的资源管理装置的一个结构示意图;
55.图4是本发明实施例的资源管理装置的另一结构示意图;
56.图5是本发明实施例的资源管理系统的结构示意图;
57.图6为本发明实施例的电子设备的一个结构示意图。
具体实施方式
58.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
59.另外,在本发明实施例中,“可选的”或者“示例性的”等词用于表示作例子、例证或说明。本发明实施例中被描述为“可选的”或者“示例性的”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“可选的”或者“示例性的”等词旨在以具体方式呈现相关概念。
60.图1是本发明实施例的资源管理方法的一个流程示意图,该方法可适用于分布式网关的限流,该方法可以由本发明实施例提供的资源管理装置来执行,该装置可以采用软件和/或硬件的方式实现。在一个具体的实施例中,该装置可以集成在网关节点中。以下实施例将以该装置集成在网关节点中为例进行说明,参考图1,本发明实施例的方法具体包括如下步骤:
61.s101、接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度。
62.其中,终端可以是手机、平板电脑、个人计算机、服务器等发送请求的终端设备,业务请求信息是获取业务请求数据时需要传递的请求参数信息,业务数据包括但不限于4层或7层协议的接口传输数据,可以包括但不限于图片、文字、网页、表格和数据接口等。本发明实施例中,网关节点为业务服务的前置设备,用于拒绝过载请求,转发正常流量到业务服务,它可以是终端本地的网关节点,即终端本地的网关节点接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度。
63.本发明实施例中,资源是限制规则中的限制对象,可以是请求的来源网际互连协议(internet protocol,ip)、业务的服务(标识)、业务的接口(标识)、请求参数以及它们的组合等。业务请求信息所需的资源的额度,指业务请求对应的限制规则的限制额度,该额度比如可以是每秒事物数(transactions per second,tps)、每秒查询率(queries per second,qps)、每秒请求数等;示例地,比如可以认为发送一次业务信息请求所需资源额度为1。网关节点根据请求的信息查询与之匹配的资源(限制规则的限制对象),得到限制规则中的限制额度。如:可以对某个终端的ip(限制对象)配置tps为10(限制额度)。当该ip发送请求时,会根据该规则的限制额度进行扣减。
64.s102、判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减,若满足,则执行步骤103,若不满足,则执行步骤104。
65.可选的,该资源的本地授权额度通过如下方式得到:
66.(1)向中心管理设备发送额度配置请求,以使得中心管理设备根据资源总额度、授权额度占比及网关节点的额度分配权重确定网关节点的本地授权额度。
67.其中,中心管理设备是统一的资源配置中心,负责资源额度的分配。示例地,中心管理设备可以是服务器,比如可以是redis数据库对应的服务器、mysql数据库对应的服务器等。
68.网关节点在接收到业务请求信息时,或者在接收到业务请求信息之前,可以向中心管理设备发送额度配置请求,以请求中心管理设备为自身分配资源(额度),额度配置请求中可以包含网关节点的标识信息,该标识信息可以用于标识网关节点,该标识信息可以是网关节点的名称、编号等。中心管理设备在接收到网关节点发送的额度配置请求之后,可以获取根据该标识信息获取网关节点的额度分配权重,根据资源总额度、授权额度占比及网关节点的额度分配权重确定网关节点的本地授权额度。其中,资源总额度即资源的总量,授权额度占比即授予网关节点的额度占资源总额度的比例。实际应用中,网关节点的额度分配权重、授权额度占比均可根据实际需要设置。比如,网关节点的额度分配权重可以根据网关节点的配置、性能、负载等设置,对于配置比较高、性能比较好、负载比较多的网关节点,可以设置较高的额度分配权重,不同网关节点的额度分配权重可以不同。比如,授权额
度占比可根据网关节点的数量、配置等设置,网关节点的数量越多、配置越高,授权额度占比可以设置的越高。
69.示例地,中心管理设备可以将资源总额度、授权额度占比及额度分配权重相乘,得到网关节点的该资源的本地授权额度,将该本地授权额度授予网关节点。当资源有多种时,网关节点可以从中心管理设备获取中心管理设备授予的每种资源的本地授权额度。为便于描述,本发明实施例将以网关节点获取某一种资源的本地授权额度为例进行说明。
70.示例性的,比如有两个网关节点a和b需要分配某种资源额度,a和b的权重分别为1和2,即网关节点a的额度分配权重为1/3,网关节点b的额度分配权重为2/3,资源总额度为10000,授权额度占比为80%;网关节点a先申请资源分配,则中心管理设备可以通过计算确定网关节点a的本地授权额度为10000*80%*(1/3),即网关节点a的本地授权额度为2666;此时资源总额度剩余7334,网关节点b接着申请资源分配,则网关节点b的本地授权额度为7334*80%*(2/3),即网关节点b的本地授权额度为3911。
71.(2)获取中心管理设备授予网关节点的本地授权额度。
72.示例性地,比如,当前的网关节点为上述网关节点a,则可以获取中心管理设备授予网关节点a的本地授权额度,即获取额度为2666。在获取中心管理设备授予的本地授权额度之后,网关节点可以初始化本地限额配置,以在内存中存储本地授权额度。
73.在得到本地授权额度之后,网关节点可以判断本地授权额度与目标额度的大小关系,若本地授权额度大于或等于目标额度,则确定本地授权额度满足目标额度的扣减,反之,若本地授权额度小于目标额度,则确定本地授权额度不满足目标额度的扣减。
74.s103、从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。
75.具体的,可以判断本地授权额度与目标额度的大小关系,若本地授权额度大于或等于目标额度,则确定本地授权额度满足目标额度的扣减,则可以直接从本地授权额度中扣减目标额度。若本地授权额度大于或等于目标额度,则确定本地授权额度满足目标额度的扣减。
76.示例性的,比如目标额度为1000,网关节点所具有的资源的本地授权额度2666,满足目标额度的扣减,则直接进行本地扣减,扣减成功之后,将业务请求信息转发到服务器。
77.s104、从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。
78.可选的,从中心管理设备申请资源以扣减目标额度,包括:
79.(1)向中心管理设备发送额度追加请求,以使得中心管理设备根据资源总剩余额度确定额度追加策略并根据额度追加策略确定追加额度,资源总剩余额度为资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度。
80.其中,额度追加请求是当网关节点的本地授权额度不足时,向中心管理设备发起的额度申请。额度追加策略是中心管理设备根据资源总剩余额度确定的额度分配策略,资源总剩余额度指的是资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度。比如,当资源总剩余额度较多时,可以按照第一额度追加策略确定追加额度,当资源总剩余额度较少时,可以按照第二额度追加策略确定追加额度,按照第一额度追加策略确定的追加额度与按照第二额度追加策略确定的追加额度可以不同,例如按照第一额度追加
策略确定的追加额度可以大于按照第二额度追加策略确定的追加额度。
81.(2)获取中心管理设备授予网关节点的追加额度,并从追加额度中扣减目标额度。
82.示例性的,比如,当前的网关节点为网关节点a,网关节点a的本地授权额度为0,若目标额度为1000,则当前的网关节点需要向中心管理设备申请追加额度,当资源总剩余额度为5000时,若网关节点a的额度分配权重为1/3,授权额度占比为80%,则可以确定追加额度为5000*80%*(1/3),即追加额度为1333,当前的网关节点在获取追加额度1333之后,可以从追加额度1333中扣减目标额度1000,在扣减成功之后,向服务器转发业务请求信息。
83.另外,网关节点还可以在本地剩余额度低于某个值时,向中心管理设备发送额度追加请求以请求追加额度。比如,网关节点可以在本地剩余额度为本地授权额度的一半时,就向中心管理设备发送额度追加请求以请求追加额度。例如,本地授权额度为1000,则网关节点可以在本地剩余额度为500时,就向中心管理设备发送额度追加请求,以保证网关节点具有充足的资源额度。
84.本发明实施例中,网关节点会接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。本发明实施例中,网关节点具有中心管理设备授予的资源的本地授权额度,针对接收到的业务请求信息,网关节点可以直接从本地授权额度中扣减所需额度,如果本地授权额度不够扣减,可向中心管理设备申请资源以扣减,从而避免了每个请求都需要与中心管理设备进行交互,减少了与中心管理设备的交互次数,避免了中心管理设备成为性能瓶颈,提高了网关系统的整体性能。
85.图2是本发明实施例的资源管理方法的另一流程示意图,该资源管理方法可以应用于中心管理设备,该方法具体包括如下步骤:
86.s201、接收网关节点发送的额度配置请求。
87.其中,中心管理设备是统一的资源配置中心,负责资源额度的分配。示例地,中心管理设备可以是服务器,比如可以是redis数据库对应的服务器、mysql数据库对应的服务器等;网关节点可以是终端本地的网关节点。
88.其中,额度配置请求中可以包含网关节点的标识信息,该标识信息可以用于标识网关节点,该标识信息可以是网关节点的名称、编号等。步骤202、获取网关节点的额度分配权重。
89.其中,额度分配权重是中心管理设备对网关节点进行额度分配时的分配参数,每个网关节点的额度分配权重可以是固定的,不同网关节点的额度分配权重可以相同、也可以不同。
90.具体的,网关节点的额度分配权重可以根据实际需要预先设置并存储在中心管理设备中,则可以从中心管理设备的存储中获取网关节点的额度分配权重。比如,网关节点的额度分配权重可以根据网关节点的配置、性能、负载等设置,对于配置比较高、性能比较好、负载比较多的网关节点,可以设置较高的额度分配权重,设置好之后,可以将为网关节点设置的额度分配权重与网关节点的标识信息对应存储在中心管理设备中,则可以在需要的时
候,根据网关节点的标识信息从存储中获取网关节点的额度分配权重。示例地,中心管理设备中存储的各个网关节点的额度分配权重比如可如下表1所示:
91.网关节点的标识信息额度分配权重标识信息a(网关节点a)1/3标识信息b(网关节点b)2/3
92.表1
93.表1所示,即包括两个网关节点,网关节点a的标识信息为a,额度分配权重为1/3,网关节点b的标识信息为b,额度分配权重为2/3。需要说明的是,表1所示网关节点的数量及额度分配权重仅为示例,并不构成对具体实施方式的限定。
94.在一个具体的实施例中,还可以从网关节点获取网关节点的额度分配权重。比如,可以预先在每个网关节点中为对应网关节点设置额度分配权重,并将为每个网关节点设置的额度分配权重存储在对应的网关节点中,则网关节点可以将自身的额度分配权重携带在额度配置请求中发送给中心管理设备,中心管理设备从网关节点发送的额度配置请求中获取网关节点的额度分配权重。
95.s202、根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度。
96.其中,资源总额度是中心管理设备所拥有的所有资源额度总量,授权额度占比即中心管理设备授予网关节点的额度占中心管理设备资源总额度的比例。
97.示例地,中心管理设备可以将资源总额度、授权额度占比及额度分配权重相乘,得到网关节点的该资源的本地授权额度,将该本地授权额度授予网关节点。当资源有多种时,中心管理设备可以将每种资源的额度均授予网关节点,网关节点可以从中心管理设备获取中心管理设备授予的每种资源的本地授权额度。为便于描述,本发明实施例将以中心管理设备授予某一种资源的本地授权额度给网关节点为例进行说明。
98.示例性的,存在两个网关节点:网关节点a和网关节点b,网关节点a和网关节点b对应的额度分配权重分别为1/3和2/3,网关节点a申请资源分配时,资源总额度为10000,授权额度占比为80%,则可以得到网关节点a的本地授权额度为(10000*80%)*(1/3)=2666,此时资源总额度剩余7334,网关节点b继续申请额度,则可以确定网关节点b的本地授权额度为(7334*80%)*(2/3)=3911。
99.s203、授予网关节点本地授权额度,以使得网关节点基于本地授权额度处理接收到的业务请求信息。
100.具体的,网关节点可以存储本地授权额度,在网关节点接收到业务请求信息时,可以基于存储的本地授权额度处理接收到的业务请求信息。其中,业务信息请求是用于请求业务数据,业务数据可以包括但不限于图片、文字、网页、表格等。
101.示例性的,比如网关节点a的本地授权额度为2666,当网关节点a接收到一个业务请求信息时,可以扣减一个本地授权额度,扣减之后的网关节点a的本地授权额度还剩2665;网关节点b的本地授权额度为3911,当网关节点b接收到一个业务信息请求,可以扣减一个本地授权额度,扣减之后网关节点b的本地授权额度还剩3910。
102.可选的,在网关节点的本地授权额度不够处理业务请求信息时,本发明实施例的方法还可以包括如下步骤:
103.(1)接收网关节点发送的额度追加请求。
104.具体的,当网关节点继续接收业务请求信息,本地授权额度不够时,网关节点需要向中心管理设备发送额度追加请求。
105.示例性的,网关节点b继续处理业务请求信息,目前网关节点b的本地授权额度是3910,当网关节点b又接收到3909个业务请求信息时,从本地授权额度中扣减3909,扣减之后本地授权额度还剩1,若又继续接收到了一个业务请求信息,网关节点b从本地授权额度中扣减一个额度之后,本地授权额度剩余0,此后,若网关节点b再收到业务请求信息,则网关节点b没有剩余额度可供扣减,网关节点b需要向中心管理设备发送额度追加请求。
106.(2)确定资源总剩余额度,资源总剩余额度为资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度。
107.示例性的,比如资源总额度为1000,当网关节点a和网关节点b分别申请本地授予额度2666和3911后,资源总剩余额度为3423。
108.(3)根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度。
109.其中,额度追加策略是中心管理设备根据资源总剩余额度确定的额度分配策略;资源总剩余额度指的是资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度。具体的,当资源总剩余额度较多时,可以按照第一额度追加策略确定追加额度,当资源总剩余额度较少时,可以按照第二额度追加策略确定追加额度,按照第一额度追加策略确定的追加额度与按照第二额度追加策略确定的追加额度可以不同,例如按照第一额度追加策略确定的追加额度可以大于按照第二额度追加策略确定的追加额度。
110.(4)授予网关节点追加额度,以使得网关节点基于追加额度处理业务请求信息。
111.可选的,当资源总剩余额度不为零时,根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度,包括:
112.(1)确定资源总剩余额度是否低于授权额度最低限值。
113.其中,授权额度最低限值是在进行额度扣减的时候,设置一个最低额度,对中心管理设备进行保护。示例性的,授权额度最低限值可以设置为1000。
114.(2)若资源总剩余额度不低于授权额度最低限值,则将资源总剩余额度、授权额度占比及额度分配权重相乘,得到追加额度。
115.示例性的,网关节点b的本地授权额度为0,此时1824个业务请求信息发送到网关节点b,网关节点b需要将中心管理设备发送额度追加请求,此时资源总剩余额度为3423,授权额度最低限值设置为1000,即资源总剩余额度大于授权额度最低限值,则可以确定网关节点b的追加额度为(3423*80%)*(2/3)=1825。
116.(3)若资源总剩余额度低于授权额度最低限值,则将预设授权额度确定为追加额度。
117.具体的,预设授权额度是中心管理设备可以根据实际情况需要进行配置的,比如,根据中心管理设备的配置、性能、负载等设置,将预设授权额度设置为1、2等,本发明实施例对此不进行限定。
118.示例性的,当资源总剩余额度为746时,即资源总剩余额度为746低于授权额度最低限值1000,此时不能按照比例授权给各个网关节点,可以根据预设授权额度确定追加额度,比如可以确定追加额度为1,所以每次接收到网关请求追加额度时仅追加额度1。
119.可选的,当资源总剩余额度为零时,根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度,包括:
120.(1)从其他网关节点回收资源,得到回收额度,其他网关节点为除网关节点之外的其他存在额度剩余的网关节点。
121.其中,回收额度是从其他网关节点回收的额度值。
122.示例性的,有4个网关节点a、b、c、d,当网关节点a现在需要向中心管理设备请求追加额度,网关节点b、c、d存在额度剩余,此时网关节点b、c、d就称为其他网关节点,中心管理设备将从其他网关节点b、c、d回收资源,得到回收额度。
123.(2)确定回收额度是否低于授权额度最低限值。
124.(3)若回收额度不低于授权额度最低限值,则将回收额度、授权额度占比及额度分配权重相乘,得到追加额度。
125.(4)若回收额度低于授权额度最低限值,则将预设授权额度确定为追加额度。
126.示例性的,当资源总剩余额度为0时,需要从其他网关节点回收资源,得到回收额度,当授权额度最低限值为1000时,判断回收额度是否低于授权额度最低限值1000;比如,回收额度为2664,即回收额度不低于授权额度最低限值1000,若网关节点b此时的本地授权额度为0,网关节点b接收到了一个业务请求信息,此时网关节点b无法进行本地扣减,需要将中心管理设备发送额度追加请求,得到追加额度为(2664*80%)*(2/3),即追加额度为1420;比如,回收额度为746,即回收额度低于授权额度最低限值1000,所以不能直接计算追加额度,而是将预设授权额度确定为追加额度,每次仅追加额度为预设授权额度。
127.本发明实施例中,中心管理设备可以接收网关节点发送的额度配置请求;获取网关节点的额度分配权重;根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度;授予网关节点本地授权额度,以使得网关节点基于本地授权额度处理接收到的业务请求信息。即本发明实施例中,中心管理设备可以为网关节点授予资源的本地授权额度,当网关节点接收到业务请求信息,网关节点可以直接利用本地授权额度处理接收到的业务请求信息,从而避免了每个请求都需要与中心管理设备进行交互,减少了中心管理设备与网关节点的交互次数,避免了中心管理设备成为性能瓶颈,提高了网关系统的整体性能。
128.图3是本发明实施例的资源管理装置的一个结构示意图,如图3所示,该资源管理装置具体包括:资源确定模块301、扣减判断模块302、第一处理模块303和第二处理模块304。其中,
129.资源确定模块301、用于接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;
130.扣减判断模块302、用于判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;
131.第一处理模块303、用于若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;
132.第二处理模块304、用于若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。
133.可选的,该装置还包括:
134.配置请求模块,用于向中心管理设备发送额度配置请求,以使得中心管理设备根据资源总额度、授权额度占比及网关节点的额度分配权重确定网关节点的本地授权额度;获取中心管理设备授予网关节点的本地授权额度。
135.可选的,第二处理模块304从中心管理设备申请资源以扣减目标额度,包括:
136.向中心管理设备发送额度追加请求,以使得中心管理设备根据资源总剩余额度确定额度追加策略并根据额度追加策略确定追加额度,资源总剩余额度为资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度;
137.获取中心管理设备授予网关节点的追加额度,并从追加额度中扣减目标额度。
138.本发明实施例所提供的一种资源管理装置,可执行本发明任意实施例所提供的资源管理方法,具备执行方法相应的功能模块和有益效果。
139.图4是本发明实施例的资源管理装置的另一结构示意图,如图4所示,该资源管理装置具体包括:接收模块401、获取模块402、额度确定模块403和额度授予模块404。其中,
140.接收模块401、用于接收网关节点发送的额度配置请求;
141.获取模块402、用于获取网关节点的额度分配权重;
142.额度确定模块403、用于根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度;
143.额度授予模块404、用于授予网关节点本地授权额度,以使得网关节点基于本地授权额度处理接收到的业务请求信息。
144.可选的,额度确定模块403具体用于:
145.将资源总额度、授权额度占比及额度分配权重相乘,得到本地授权额度。
146.可选的,在本地授权额度不够处理业务请求信息时,额度授予模块404还用于:
147.接收网关节点发送的额度追加请求;
148.确定资源总剩余额度,资源总剩余额度为资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度;
149.根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度;
150.授予网关节点追加额度,以使得网关节点基于追加额度处理业务请求信息。
151.可选的,当资源总剩余额度不为零时,额度授予模块404根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度,包括:
152.确定资源总剩余额度是否低于授权额度最低限值;
153.若资源总剩余额度不低于授权额度最低限值,则将资源总剩余额度、授权额度占比及额度分配权重相乘,得到追加额度;
154.若资源总剩余额度低于授权额度最低限值,则将预设授权额度确定为追加额度。
155.可选的,当资源总剩余额度为零时,额度授予模块404根据资源总剩余额度确定额度追加策略,并根据额度追加策略确定追加额度,包括:
156.从其他网关节点回收资源,得到回收额度,其他网关节点为除网关节点之外的其他存在额度剩余的网关节点;
157.确定回收额度是否低于授权额度最低限值;
158.若回收额度不低于授权额度最低限值,则将回收额度、授权额度占比及额度分配权重相乘,得到追加额度;
159.若回收额度低于授权额度最低限值,则将预设授权额度确定为追加额度。
160.本发明实施例所提供的一种资源管理装置,可执行本发明任意实施例所提供的资源管理方法,具备执行方法相应的功能模块和有益效果。
161.图5为本发明实施例的资源管理系统的一个结构示意图,如图5所示,该资源管理系统包括终端501、网关节点502、中心管理设备503、服务器504、
162.其中:
163.终端501用于:向网关节点502发送业务请求信息。
164.网关节点502用于:接收终端501发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;判断网关节点502所具有的资源的本地授权额度是否满足目标额度的扣减;若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器504转发业务请求信息。若本地授权额度不满足目标额度的扣减,则向中心管理设备503申请资源以扣减目标额度,并在扣减成功之后,向服务器504转发业务请求信息。
165.中心管理设备503用于:接收网关节点502发送的额度配置请求,并获取网关节点502的额度配置权重,根据额度分配权重、资源总额度及授权额度占比确定网关节点502的本地授权额度;授予网关节点502本地授权额度,以使得网关节点502基于本地授权额度处理接收到的业务请求信息。
166.服务器504用于:接收额度扣减成功后的业务请求信息。
167.需要说明的是,本发明实施例中,网关节点502可以包括多个,每个网关节点502均可以和中心管理设备503交互获取资源额度,每个网关节点502均可以接收对应终端501发送的业务请求信息,并在额度扣减成功之后,将业务请求信息转发给对应的服务器504。
168.本实施例提供的资源管理系统,包括网关节点和中心管理设备,网关节点具有中心管理设备授予的资源的本地授权额度,针对接收到的业务请求信息,网关节点可以直接从本地授权额度中扣减所需额度,如果本地授权额度不够扣减,可向中心管理设备申请资源以扣减,从而避免了每个请求都需要与中心管理设备进行交互,减少了与中心管理设备的交互次数,避免了中心管理设备成为性能瓶颈,提高了网关系统的整体性能。
169.图6为本发明实施例的电子设备的一个结构示意图,该电子设备是终端,如图6所示,该电子设备包括处理器601、存储器602、输入装置603和输出装置604;电子设备中处理器601的数量可以是一个或多个,图6中以一个处理器601为例;电子设备中的处理器601、存储器602、输入装置603和输出装置604可以通过总线或其他方式连接,图6中以通过总线连接为例。
170.存储器602作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的资源管理方法对应的程序指令/模块(例如资源管理装置中的接收模块401、获取模块402、额度确定模块403和额度授予模块404),处理器601通过运行存储在存储器602中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的资源管理方法。
171.存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个
磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器602可进一步包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
172.输入装置603可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置604可包括显示屏等显示设备。
173.本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种资源管理方法,该方法包括:
174.接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;
175.判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;
176.若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;
177.若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。
178.或者,该方法包括:
179.接收网关节点发送的额度配置请求;
180.获取网关节点的额度分配权重;
181.根据额度分配权重、资源总额度及授权额度占比确定网关节点的本地授权额度;
182.授予网关节点本地授权额度,以使得网关节点基于本地授权额度处理接收到的业务请求信息。
183.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的资源管理方法中的相关操作。
184.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
185.值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
186.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
技术特征:
1.一种资源管理方法,其特征在于,应用于网关节点,所述资源管理方法包括:接收终端发送的业务请求信息,并确定所述业务请求信息所需的资源的目标额度;判断所述网关节点所具有的所述资源的本地授权额度是否满足所述目标额度的扣减;若所述本地授权额度满足所述目标额度的扣减,则从所述本地授权额度中扣减所述目标额度,并在扣减成功之后,向服务器转发所述业务请求信息;若所述本地授权额度不满足所述目标额度的扣减,则从中心管理设备申请所述资源以扣减所述目标额度,并在扣减成功之后,向服务器转发所述业务请求信息。2.根据权利要求1所述的资源管理方法,其特征在于,所述本地授权额度通过如下方式得到:向所述中心管理设备发送额度配置请求,以使得所述中心管理设备根据资源总额度、授权额度占比及所述网关节点的额度分配权重确定所述网关节点的所述本地授权额度;获取所述中心管理设备授予所述网关节点的所述本地授权额度。3.根据权利要求1或2所述的资源管理方法,其特征在于,所述从中心管理设备申请所述资源以扣减所述目标额度,包括:向所述中心管理设备发送额度追加请求,以使得所述中心管理设备根据资源总剩余额度确定额度追加策略并根据所述额度追加策略确定追加额度,所述资源总剩余额度为所述资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度;获取所述中心管理设备授予所述网关节点的所述追加额度,并从所述追加额度中扣减所述目标额度。4.一种资源管理方法,其特征在于,应用于中心管理设备,所述资源管理方法包括:接收网关节点发送的额度配置请求;获取所述网关节点的额度分配权重;根据所述额度分配权重、资源总额度及授权额度占比确定所述网关节点的本地授权额度;授予所述网关节点所述本地授权额度,以使得所述网关节点基于所述本地授权额度处理接收到的业务请求信息。5.根据权利要求4所述的资源管理方法,其特征在于,所述根据所述额度分配权重、资源总额度及授权额度占比确定所述网关节点的本地授权额度,包括:将所述资源总额度、所述授权额度占比及所述额度分配权重相乘,得到所述本地授权额度。6.根据权利要求4或5所述的资源管理方法,其特征在于,在所述本地授权额度不够处理所述业务请求信息时,所述方法还包括:接收所述网关节点发送的额度追加请求;确定资源总剩余额度,所述资源总剩余额度为所述资源总额度中扣除分配给各个网关节点的本地授权额度之后剩余的额度;根据所述资源总剩余额度确定额度追加策略,并根据所述额度追加策略确定追加额度;授予所述网关节点所述追加额度,以使得所述网关节点基于所述追加额度处理所述业务请求信息。
7.根据权利要求6所述的资源管理方法,其特征在于,当所述资源总剩余额度不为零时,所述根据所述资源总剩余额度确定额度追加策略,并根据所述额度追加策略确定追加额度,包括:确定所述资源总剩余额度是否低于授权额度最低限值;若所述资源总剩余额度不低于所述授权额度最低限值,则将资源总剩余额度、所述授权额度占比及所述额度分配权重相乘,得到所述追加额度;若所述资源总剩余额度低于所述授权额度最低限值,则将预设授权额度确定为所述追加额度。8.根据权利要求6所述的资源管理方法,其特征在于,当所述资源总剩余额度为零时,所述根据所述资源总剩余额度确定额度追加策略,并根据所述额度追加策略确定追加额度,包括:从其他网关节点回收资源,得到回收额度,所述其他网关节点为除所述网关节点之外的其他存在额度剩余的网关节点;确定所述回收额度是否低于授权额度最低限值;若所述回收额度不低于所述授权额度最低限值,则将回收额度、所述授权额度占比及所述额度分配权重相乘,得到所述追加额度;若所述回收额度低于所述授权额度最低限值,则将预设授权额度确定为所述追加额度。9.一种资源管理装置,其特征在于,包括:资源确定模块,用于接收终端发送的业务请求信息,并确定所述业务请求信息所需的资源的目标额度;扣减判断模块,用于判断所述网关节点所具有的所述资源的本地授权额度是否满足所述目标额度的扣减;第一处理模块,用于若所述本地授权额度满足所述目标额度的扣减,则从所述本地授权额度中扣减所述目标额度,并在扣减成功之后,向服务器转发所述业务请求信息;第二处理模块,用于若所述本地授权额度不满足所述目标额度的扣减,则从中心管理设备申请所述资源以扣减所述目标额度,并在扣减成功之后,向服务器转发所述业务请求信息。10.一种资源管理装置,其特征在于,包括:接收模块,用于接收网关节点发送的额度配置请求;获取模块,用于获取所述网关节点的额度分配权重;额度确定模块,用于根据所述额度分配权重、资源总额度及授权额度占比确定所述网关节点的本地授权额度;额度授予模块,用于授予所述网关节点所述本地授权额度,以使得所述网关节点基于所述本地授权额度处理接收到的业务请求信息。
技术总结
本发明公开了一种资源管理方法、装置、设备及存储介质。该方法包括接收终端发送的业务请求信息,并确定业务请求信息所需的资源的目标额度;判断网关节点所具有的资源的本地授权额度是否满足目标额度的扣减;若本地授权额度满足目标额度的扣减,则从本地授权额度中扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息;若本地授权额度不满足目标额度的扣减,则从中心管理设备申请资源以扣减目标额度,并在扣减成功之后,向服务器转发业务请求信息。本发明实施例通过资源管理方法,将一部分额度授权给每个网关节点,由网关节点直接扣减,减少节点与中心管理设备的交互,解决中心管理设备的性能瓶颈问题,最大的发挥网关的高性能的特性。性能的特性。性能的特性。
技术研发人员:冯二虎 郭利民
受保护的技术使用者:上海派拉软件股份有限公司
技术研发日:2021.11.30
技术公布日:2022/3/8