CN113886078B - 基于动态阈值机制实现配额统一管理的方法、装置、电子设备及计算机可读存储介质 - Google Patents
基于动态阈值机制实现配额统一管理的方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113886078B CN113886078B CN202111143375.XA CN202111143375A CN113886078B CN 113886078 B CN113886078 B CN 113886078B CN 202111143375 A CN202111143375 A CN 202111143375A CN 113886078 B CN113886078 B CN 113886078B
- Authority
- CN
- China
- Prior art keywords
- quota
- threshold
- factor data
- center
- dynamic
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/524—Deadlock detection or avoidance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Abstract
本发明公开了一种基于动态阈值机制实现配额统一管理的方法及应用,该方法包括以下步骤:获取当前系统的业务因素数据和系统因素数据;根据所述业务因素数据和所述系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值;以及查询当前系统配额余量状态,并根据查询结果执行对应的配额执行方案。该方法能够根据不同的配额阈值,自动改变成对应的处理配额的方案,根据预先配置好的映射关系自动进行切换,保证在配额的正常使用前提下,最大程度提高使用并发量,同时基于动态阈值机制,可以灵活的进行配额扣除方案的配置,提升了系统的灵活性。
Description
技术领域
本发明是关于计算机领域,特别是关于一种基于动态阈值机制实现配额统一管理的方法及应用。
背景技术
对于传统云资源配额统一管理的方案大都是采取分布式锁加消息模型的方法处理,根据分布式事务TCC方案来实现高并发下剩余配额到达预警值时,防止配额出现超扣现象。
传统云资源配额统一管理的方案虽然可以解决配额使用过程中避免出现配额超扣问题,但是却存在以下问题:在配额值充足时不能保证其并发量;配额的阈值是单一的,并非动态变化;对资源的充分利用率不高。
公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
发明内容
本发明的目的在于提供一种基于动态阈值机制实现配额统一管理的,其能够根据不同的配额阈值,自动改变成对应的处理配额的方案,根据预先配置好的映射关系自动进行切换,保证在配额的正常使用前提下,最大程度提高使用并发量,同时基于动态阈值机制,可以灵活的进行配额扣除方案的配置,提升了系统的灵活性。
为实现上述目的,本发明的实施例提供了一种基于动态阈值机制实现配额统一管理的的方法。
在本发明的一个或多个实施方式中,所述方法包括:获取当前系统的业务因素数据和系统因素数据;根据所述业务因素数据和所述系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值;以及查询当前系统配额余量状态,并根据查询结果执行对应的配额执行方案。
在本发明的一个或多个实施方式中,所述获取当前系统的业务因素数据和系统因素数据前,还包括,在配置中心预设配额阈值以及配额执行方案,所述配额阈值包括高位阈值和低位阈值,所述配额执行方案包括直接配额扣除方案、数据库锁扣除方案和分布式锁扣除方案;所述获取当前系统的业务因素数据和系统因素数据包括根据预设时长定时获取或根据用户要求单独发起获取指令。
在本发明的一个或多个实施方式中,所述查询配额余量状态,并根据查询结果执行对应的配额执行方案,包括:将查询到的当前系统的配额余量与动态配额阈值的高位阈值和低位阈值进行比较,在所述配额余量不小于所述高位阈值时,直接进行配额扣除;或,在所述配额余量小于所述高位阈值,并且不小于所述低位阈值时,根据数据库锁进行配额扣除;或,在所述配额余量小于所述低位阈值时,根据分布式锁进行配额扣除。
在本发明的一个或多个实施方式中,在所述配额余量不小于所述高位阈值时,直接进行配额扣除,包括:根据业务需求直接进行云资源配额扣除,更新所述云资源,并记录操作日志。
在本发明的一个或多个实施方式中,在所述配额余量小于所述高位阈值,并且不小于所述低位阈值时,根据数据库锁进行配额扣除,包括:根据业务需求使用数据库锁进行云资源配额扣除,更新所述云资源,并记录操作日志。
在本发明的一个或多个实施方式中,在所述配额余量小于所述低位阈值时,根据分布式锁进行配额扣除,包括:申请配额预扣,获取分布式锁,并颁发预扣令牌进行预扣;操作所述云资源,记录操作日志,并将数据保存至数据库;判断操作所述云资源实际需要的配额与预扣配额是否一致;若是,对所述配额进行实际扣除。
在本发明的一个或多个实施方式中,所述业务因素数据包括:平台登录人数、当前活跃人数、剩余配额值和并发访问量,所述系统因素数据包括:服务器系统内存、网络带宽和服务器CPU消耗。
在本发明的另一个方面当中,提供了一种基于动态阈值机制实现配额统一管理的装置,其包括配置中心、监控中心和调度中心。
配置中心,用于预设配额阈值以及配额执行方案,所述配额阈值包括高位阈值和低位阈值,所述配额执行方案包括直接配额扣除方案、数据库锁扣除方案和分布式锁扣除方案。
监控中心,监控系统当前的业务因素数据和系统因素数据。
调度中心,用于获取配置中心预设的配额阈值、配额执行方案,定时检查并获取监控中心当前系统的业务因素数据和系统因素数据,以及根据业务因素数据和系统因素数据计算结果更新配额阈值至配置中心。
所述调度中心还用于在更新配额阈值之后,从配置中心获取配额执行方案,然后根据查询配额余量的结果,执行对应的配额执行方案。
在本发明的一个或多个实施方式中,所述装置还包括算法中心和处理中心。
算法中心,用于根据调度中心传入的当前系统的业务因素数据和系统因素数据计算出当前系统的配额阈值并回传调度中心。
处理中心,用于将获取的当前系统配额余量与算法中心计算出的配额阈值的高位阈值以及低位阈值进行比较,回传至调度中心,以及根据调度中心传入的配额执行方案,选择对应的执行器执行传入的配额执行方案,并将执行结果回传调度中心。
在本发明的一个或多个实施方式中,所述调度中心还用于:在所述配额余量不小于所述高位阈值时,调用直接配额扣除方案;或,在所述配额余量小于所述高位阈值,并且不小于所述低位阈值时,调用数据库锁扣除方案;或,在所述配额余量小于所述低位阈值时,调用分布式锁扣除方案。
在本发明的一个或多个实施方式中,所述处理中心还用于:根据业务需求直接进行云资源配额扣除,更新所述云资源,并记录操作日志。
在本发明的一个或多个实施方式中,所述处理中心还用于:根据业务需求使用数据库锁进行云资源配额扣除,更新所述云资源,并记录操作日志。
在本发明的一个或多个实施方式中,所述处理中心还用于:申请配额预扣,获取分布式锁,并颁发预扣令牌进行预扣;操作所述云资源,记录操作日志,并将数据保存至数据库;判断操作所述云资源实际需要的配额与预扣配额是否一致;若是,对所述配额进行实际扣除。
在本发明的另一个方面当中,提供了一种电子设备,包括:至少一个处理器;以及存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的基于动态阈值机制实现配额统一管理的方法。
在本发明的另一个方面当中,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的基于动态阈值机制实现配额统一管理的方法的步骤。
与现有技术相比,根据本发明实施方式的基于动态阈值机制实现配额统一管理的方法及应用,其能够根据不同的配额阈值,自动改变成对应的处理配额的方案,根据预先配置好的映射关系自动进行切换,保证在配额的正常使用前提下,最大程度提高使用并发量。
采用定时从监控中心获取业务因素和系统因素,通过算法中心计算出动态配额阈值,调度中心根据配置中心配置好的配额扣除方案,调用处理中心执行对应的配额管理,能够根据不同的动态配额阈值执行不同的配额处理方案,在剩余配额充足时,提高了配额管理的并发量;基于监控中心数据通过算法中心计算出动态配额阈值,解决了单一的阈值场景,提升了系统的灵活性;通过监控中心数据反应出当前系统消耗,可以充分利用系统资源用于处理平台业务。
附图说明
图1是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的流程图;
图2是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的时序图;
图3是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的示意图;
图4是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的直接扣除流程图;
图5是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的数据库锁扣除流程图;
图6是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的分布式锁扣除流程图;
图7是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的方法的分布式锁扣除具体流程图;
图8是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的装置的结构图;
图9是根据本发明一实施方式的基于动态阈值机制实现配额统一管理的计算设备的硬件结构图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
以下结合附图,详细说明本发明各实施例提供的技术方案。
实施例1
如图1至图3所示,介绍本发明的一个实施例中基于动态阈值机制实现配额统一管理的的方法,该方法包括如下步骤。
在步骤S101中,获取当前系统的业务因素数据和系统因素数据。
按照预设时长定时检查当前系统的相关数据,或根据用户要求单独发起获取相关数据的指令,相关数据包括业务因素数据和系统因素数据。业务因素数据包括:平台登录人数、当前操作云资源的活跃人数、剩余配额量、操作云资源的并发量等。系统因素数据包括:服务器系统内存、服务器网络带宽、服务器的CPU消耗等。
在步骤S102中,根据业务因素数据和系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值。
在配置中心预设配额阈值以及配额执行方案,配额阈值包括高位阈值和低位阈值,配额执行方案包括直接配额扣除方案、数据库锁扣除方案和分布式锁扣除方案。
如图2所示,调度中心从配置中心获取系统预设的配额阈值(高位阈值和低位阈值),高位阈值和低位阈值分别对应不同的当前配额值和并发量。调度中心将高位阈值Max和低位阈值Min返回给配置中心,并保存系统预设的配额阈值。
监控中心按照预设时长定时检查当前系统的业务因素数据和系统因素数据,并将当前时刻的业务因素数据和系统因素数据返回给调度中心,通过监控中心返回的数据调用算法中心获取动态配额阈值,更新高位阈值和低位阈值至配置中心。
在步骤S103中,查询当前系统配额余量状态,并根据查询结果执行对应的配额执行方案。
配置中心针对不同的配额阈值设置不同的配额扣除方案,查询配额余量状态,处理中心将配额余量与获取的最新动态配额阈值的高位阈值和低位阈值进行比较,调度中心根据比较结果调用配置中心配置的对应配额扣除方案 (由于需要实时查询配额余量,因此配额扣除方案也会改变),调度中心根据调用的配额扣除方案,调用处理中心去实际执行。
在本实施例中,如图3所示,在配额余量不小于高位阈值时,直接进行配额扣除;在配额余量小于高位阈值,并且不小于低位阈值时,根据数据库锁进行配额扣除;在配额余量小于低位阈值时,根据分布式锁进行配额扣除。
实施例2
如图4所示,介绍本发明的一个实施例中基于动态阈值机制实现配额统一管理的的方法,该方法包括如下步骤。
在步骤S201中,获取当前系统的业务因素数据和系统因素数据。
按照预设时长定时检查当前系统的相关数据,或根据用户要求单独发起获取相关数据的指令,相关数据包括业务因素数据和系统因素数据。业务因素数据包括:平台登录人数、当前操作云资源的活跃人数、剩余配额量、操作云资源的并发量等。系统因素数据包括:服务器系统内存、服务器网络带宽、服务器的CPU消耗等。
在步骤S202中,根据业务因素数据和系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值。
调度中心从配置中心获取系统预设的配额阈值(高位阈值和低位阈值),高位阈值和低位阈值分别对应不同的当前配额值和并发量。调度中心将高位阈值Max和低位阈值Min返回给配置中心,并保存系统预设的配额阈值。
监控中心按照预设时长定时检查当前系统的业务因素数据和系统因素数据,并将当前时刻的业务因素数据和系统因素数据返回给调度中心,通过监控中心返回的数据调用算法中心获取动态配额阈值,更新高位阈值和低位阈值至配置中心。
在步骤S203中,在配额余量不小于高位阈值时,直接进行配额扣除。
具体的,用户访问系统并操作云资源,前端请求服务端资源,网关将请求转发至服务器,服务器直接操作数据库,根据该云资源所需的配额直接进行配额扣除,更新云资源以供其他资源继续进行配额扣除,并写入操作日志至信息表。
实施例3
如图5所示,介绍本发明的一个实施例中基于动态阈值机制实现配额统一管理的的方法,该方法包括如下步骤。
在步骤S301中,获取当前系统的业务因素数据和系统因素数据。
按照预设时长定时检查当前系统的相关数据,或根据用户要求单独发起获取相关数据的指令,相关数据包括业务因素数据和系统因素数据。业务因素数据包括:平台登录人数、当前操作云资源的活跃人数、剩余配额量、操作云资源的并发量等。系统因素数据包括:服务器系统内存、服务器网络带宽、服务器的CPU消耗等。
在步骤S302中,根据业务因素数据和系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值。
调度中心从配置中心获取系统预设的配额阈值(高位阈值和低位阈值),高位阈值和低位阈值分别对应不同的当前配额值和并发量。调度中心将高位阈值Max和低位阈值Min返回给配置中心,并保存系统预设的配额阈值。
监控中心按照预设时长定时检查当前系统的业务因素数据和系统因素数据,并将当前时刻的业务因素数据和系统因素数据返回给调度中心,通过监控中心返回的数据调用算法中心获取动态配额阈值,更新高位阈值和低位阈值至配置中心。
在步骤S303中,在配额余量小于高位阈值,并且不小于低位阈值时,根据数据库锁进行配额扣除。
数据库锁即数据库锁定机制,是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则。
具体的,用户访问系统并操作云资源,前端请求服务端资源,网关将该请求转发至服务器,服务器使用数据库锁操作数据库,进行配额扣除,服务器在处理该云资源时,将其他资源通过数据库锁锁定,根据该云资源所需的配额进行配额扣除,解除其他资源锁定,更新云资源以供其他资源继续进行配额扣除,并写入操作日志至信息表。
实施例4
如图6至图7所示,介绍本发明的一个实施例中基于动态阈值机制实现配额统一管理的的方法,该方法包括如下步骤。
在步骤S401中,获取当前系统的业务因素数据和系统因素数据。
按照预设时长定时检查当前系统的相关数据,或根据用户要求单独发起获取相关数据的指令,相关数据包括业务因素数据和系统因素数据。业务因素数据包括:平台登录人数、当前操作云资源的活跃人数、剩余配额量、操作云资源的并发量等。系统因素数据包括:服务器系统内存、服务器网络带宽、服务器的CPU消耗等。
在步骤S402中,根据业务因素数据和系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值。
调度中心从配置中心获取系统预设的配额阈值(高位阈值和低位阈值),高位阈值和低位阈值分别对应不同的当前配额值和并发量。调度中心将高位阈值Max和低位阈值Min返回给配置中心,并保存系统预设的配额阈值。
监控中心按照预设时长定时检查当前系统的业务因素数据和系统因素数据,并将当前时刻的业务因素数据和系统因素数据返回给调度中心,通过监控中心返回的数据调用算法中心获取动态配额阈值,更新高位阈值和低位阈值至配置中心。
在步骤S403中,在配额余量小于低位阈值时,根据分布式锁进行配额扣除。
分布式锁是为了防止分布式系统中的多个进程之间相互干扰,需要一种分布式协调技术对这些进程进行调度,而分布式协调技术的核心就是实现分布式锁。即上层创建资源时先预扣配额;然后待底层资源实际操作成功后再确认配额;如若底层资源操作失败,需要回退上层预扣的配额值。
基于数据库实现分布式锁,只需要在数据库中创建一个表,表中包含方法名,对方法名加上唯一索引,执行该方法时,使用这个方法名向表中插入数据,插入时,其它数据都无法插入,即其他数据获得锁,在插入数据成功插入后,删除对应的数据并释放锁。
具体的,用户访问系统并操作云资源,前端请求服务端资源,网关将请求转发至服务器,服务器请求配额中台的API申请配额预扣,配额中台获取分布式锁,将其他资源锁定,并根据该云资源所需配额颁发预扣令牌进行预扣。完成配额预扣后,服务器操作实际云资源,写入日志到信息表,并操作数据库保存数据。
消息队列是一个消息的链表,可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息;对消息队列有读权限的进程则可以从消息队列中读走消息。消息队列是随内核持续的。
服务器发送消息队列消息至配额中台,配额中台监听消息队列,根据消息队列消息中的相关信息判断操作云资源实际需要的配额与预扣配额是否一致;若是,对配额进行实际扣除。
本实施例在配额剩余量充足时,可以充分利用系统的CPU以及内存资源来处理平台业务,提升了系统的并发量,同时基于动态阀值机制,可以灵活的进行执行策略的配置,提升了系统的灵活性。
如图8所示,介绍根据本发明具体实施方式的基于动态阈值机制实现配额统一管理的装置。
在本发明的实施方式中,基于动态阈值机制实现配额统一管理的装置包括配置中心801、监控中心802、调度中心803、算法中心804和处理中心805。
配置中心801,用于预设配额阈值以及配额执行方案,配额阈值包括高位阈值和低位阈值,配额执行方案包括直接配额扣除方案、数据库锁扣除方案和分布式锁扣除方案。
监控中心802,监控系统当前的业务因素数据和系统因素数据。
调度中心803,用于获取配置中心预设的配额阈值、配额执行方案,定时检查并获取监控中心当前系统的业务因素数据和系统因素数据,以及根据业务因素数据和系统因素数据计算结果更新配额阈值至配置中心。
调度中心803还用于:在更新配额阈值之后,从配置中心获取配额执行方案,然后根据查询配额余量的结果,执行对应的配额执行方案。
算法中心804,用于根据调度中心传入的当前系统的业务因素数据和系统因素数据计算出当前系统的配额阈值并回传调度中心。
处理中心805,用于将获取的当前系统配额余量与算法中心计算出的配额阈值的高位阈值以及低位阈值进行比较,回传至调度中心,以及根据调度中心传入的配额执行方案,选择对应的执行器执行传入的配额执行方案,并将执行结果回传调度中心。
调度中心803还用于:在配额余量不小于高位阈值时,调用直接配额扣除方案;或,在配额余量小于高位阈值,并且不小于低位阈值时,调用数据库锁扣除方案;或,在配额余量小于低位阈值时,调用分布式锁扣除方案。
处理中心805还用于:根据业务需求直接进行云资源配额扣除,更新云资源,并记录操作日志。
处理中心805还用于:根据业务需求使用数据库锁进行云资源配额扣除,更新云资源,并记录操作日志。
处理中心805还用于:申请配额预扣,获取分布式锁,并颁发预扣令牌进行预扣;操作云资源,记录操作日志,并将数据保存至数据库;判断操作云资源实际需要的配额与预扣配额是否一致;若是,对配额进行实际扣除。
在本实施例中,业务因素数据包括:平台登录人数、当前活跃人数、剩余配额值和并发访问量,系统因素数据包括:服务器系统内存、网络带宽和服务器CPU消耗。
图9示出了根据本说明书的实施例的用于基于动态阈值机制实现配额统一管理的的计算设备90的硬件结构图。如图9所示,计算设备90可以包括至少一个处理器901、存储器902(例如非易失性存储器)、内存903和通信接口904,并且至少一个处理器901、存储器902、内存903和通信接口904经由总线905连接在一起。至少一个处理器901执行在存储器902中存储或编码的至少一个计算机可读指令。
应该理解,在存储器902中存储的计算机可执行指令当执行时使得至少一个处理器901进行本说明书的各个实施例中以上结合图1-9描述的各种操作和功能。
在本说明书的实施例中,计算设备90可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种比如机器可读介质的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-9描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
根据本发明实施方式的基于动态阈值机制实现配额统一管理的方法及应用,其能够根据不同的配额阈值,自动改变成对应的处理配额的方案,根据预先配置好的映射关系自动进行切换,保证在配额的正常使用前提下,最大程度提高使用并发量。
采用定时从监控中心获取业务因素和系统因素,通过算法中心计算出动态配额阈值,调度中心根据配置中心配置好的配额扣除方案,调用处理中心执行对应的配额管理,能够根据不同的动态配额阈值执行不同的配额处理方案,在剩余配额充足时,提高了配额管理的并发量;基于监控中心数据通过算法中心计算出动态配额阈值,解决了单一的阈值场景,提升了系统的灵活性;通过监控中心数据反应出当前系统消耗,可以充分利用系统资源用于处理平台业务。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
Claims (10)
1.一种基于动态阈值机制实现配额统一管理的方法,其特征在于,所述方法包括:
获取当前系统的业务因素数据和系统因素数据;
根据所述业务因素数据和所述系统因素数据获取动态配额阈值,根据获取的动态配额阈值的高位阈值以及低位阈值更新配置中心的高位阈值和低位阈值;以及
查询当前系统配额余量状态;
将查询到的当前系统的配额余量与动态配额阈值的高位阈值和低位阈值进行比较;
在所述配额余量不小于所述高位阈值时,直接进行配额扣除;
在所述配额余量小于所述高位阈值,并且不小于所述低位阈值时,根据数据库锁进行配额扣除;
在所述配额余量小于所述低位阈值时,根据分布式锁进行配额扣除。
2.如权利要求1所述的基于动态阈值机制实现配额统一管理的方法,其特征在于,所述获取当前系统的业务因素数据和系统因素数据前,还包括,
在配置中心预设配额阈值以及配额执行方案,所述配额阈值包括高位阈值和低位阈值,所述配额执行方案包括直接配额扣除方案、数据库锁扣除方案和分布式锁扣除方案;
所述获取当前系统的业务因素数据和系统因素数据包括根据预设时长定时获取或根据用户要求单独发起获取指令。
3.如权利要求2所述的基于动态阈值机制实现配额统一管理的方法,其特征在于,在所述配额余量不小于所述高位阈值时,直接进行配额扣除,包括:
根据业务需求直接进行云资源配额扣除,更新所述云资源,并记录操作日志。
4.如权利要求2所述的基于动态阈值机制实现配额统一管理的方法,其特征在于,在所述配额余量小于所述高位阈值,并且不小于所述低位阈值时,根据数据库锁进行配额扣除,包括:
根据业务需求使用数据库锁进行云资源配额扣除,更新所述云资源,并记录操作日志。
5.如权利要求2所述的基于动态阈值机制实现配额统一管理的方法,其特征在于,在所述配额余量小于所述低位阈值时,根据分布式锁进行配额扣除,包括:
申请配额预扣,获取分布式锁,并颁发预扣令牌进行预扣;
操作云资源,记录操作日志,并将数据保存至数据库;
判断操作所述云资源实际需要的配额与预扣配额是否一致;若是,
对所述配额进行实际扣除。
6.如权利要求1所述的基于动态阈值机制实现配额统一管理的方法,其特征在于,所述业务因素数据包括:平台登录人数、当前活跃人数、剩余配额值和并发访问量,所述系统因素数据包括:服务器系统内存、网络带宽和服务器CPU消耗。
7.一种基于动态阈值机制实现配额统一管理的装置,其特征在于,所述装置包括:
配置中心,用于预设配额阈值以及配额执行方案,所述配额阈值包括高位阈值和低位阈值,所述配额执行方案包括直接配额扣除方案、数据库锁扣除方案和分布式锁扣除方案;
监控中心,监控系统当前的业务因素数据和系统因素数据;
调度中心,用于获取配置中心预设的配额阈值、配额执行方案,定时检查并获取监控中心当前系统的业务因素数据和系统因素数据,以及根据业务因素数据和系统因素数据计算结果更新配额阈值至配置中心;
所述调度中心还用于在更新配额阈值之后,从配置中心获取配额执行方案,然后将查询到的当前系统的配额余量与动态配额阈值的高位阈值和低位阈值进行比较;
在所述配额余量不小于所述高位阈值时,直接进行配额扣除;
在所述配额余量小于所述高位阈值,并且不小于所述低位阈值时,根据数据库锁进行配额扣除;
在所述配额余量小于所述低位阈值时,根据分布式锁进行配额扣除。
8.如权利要求7所述的基于动态阈值机制实现配额统一管理的装置,其特征在于,所述装置还包括,
算法中心,用于根据调度中心传入的当前系统的业务因素数据和系统因素数据计算出当前系统的配额阈值并回传调度中心;
处理中心,用于将获取的当前系统配额余量与算法中心计算出的配额阈值的高位阈值以及低位阈值进行比较,回传至调度中心,以及根据调度中心传入的配额执行方案,选择对应的执行器执行传入的配额执行方案,并将执行结果回传调度中心。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如权利要求1至6中任一项所述的基于动态阈值机制实现配额统一管理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的基于动态阈值机制实现配额统一管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143375.XA CN113886078B (zh) | 2021-09-28 | 2021-09-28 | 基于动态阈值机制实现配额统一管理的方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111143375.XA CN113886078B (zh) | 2021-09-28 | 2021-09-28 | 基于动态阈值机制实现配额统一管理的方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113886078A CN113886078A (zh) | 2022-01-04 |
CN113886078B true CN113886078B (zh) | 2022-06-17 |
Family
ID=79007518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111143375.XA Active CN113886078B (zh) | 2021-09-28 | 2021-09-28 | 基于动态阈值机制实现配额统一管理的方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113886078B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008127947A2 (en) * | 2007-04-13 | 2008-10-23 | Isilon Systems, Inc. | Systems and methods of incremental computing and quota accounting |
CN102333103A (zh) * | 2010-07-12 | 2012-01-25 | 戴元顺 | 云存储系统 |
CN103823765A (zh) * | 2014-02-26 | 2014-05-28 | 浙江宇视科技有限公司 | 一种动态调整缓存刷新策略的方法和装置 |
CN107368359A (zh) * | 2017-05-31 | 2017-11-21 | 杭州大搜车汽车服务有限公司 | 一种异步任务执行方法及其存储介质、装置 |
CN109144727A (zh) * | 2018-08-21 | 2019-01-04 | 郑州云海信息技术有限公司 | 云数据系统中资源的管理方法和装置 |
CN109558218A (zh) * | 2018-12-04 | 2019-04-02 | 山东浪潮通软信息科技有限公司 | 一种基于Redis的分布式业务数据锁实现方法 |
CN109726007A (zh) * | 2017-10-31 | 2019-05-07 | 中兴通讯股份有限公司 | 一种容器编排配额管理方法和装置、及容器编排系统 |
CN109901798A (zh) * | 2019-02-27 | 2019-06-18 | 新华三技术有限公司成都分公司 | 数据存储方法及装置 |
WO2019219182A1 (en) * | 2018-05-16 | 2019-11-21 | Nokia Solutions And Networks Oy | Adaptive quota allocation |
CN110519183A (zh) * | 2019-09-29 | 2019-11-29 | 北京金山云网络技术有限公司 | 一种节点限速的方法、装置、电子设备及存储介质 |
CN112015557A (zh) * | 2020-08-31 | 2020-12-01 | 北京金山云网络技术有限公司 | 资源调整方法、装置和服务器 |
CN112445857A (zh) * | 2019-08-28 | 2021-03-05 | 北京京东尚科信息技术有限公司 | 一种基于数据库的资源配额管理方法和装置 |
CN112486694A (zh) * | 2020-11-30 | 2021-03-12 | 山东浪潮通软信息科技有限公司 | 一种基于Redis的网络锁处理方法及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150378993A1 (en) * | 2014-06-27 | 2015-12-31 | Netapp, Inc. | System and method for implementing a quota system in a distributed file system |
CN104461707B (zh) * | 2014-11-28 | 2018-09-28 | 华为技术有限公司 | 一种锁请求处理方法及装置 |
US20190182838A1 (en) * | 2017-12-11 | 2019-06-13 | Comptel Oy | Arrangement and method for dynamic quota allocation in communication network |
CN111045819A (zh) * | 2019-11-22 | 2020-04-21 | 北京云宽志业网络技术有限公司 | 分布式系统的资源请求方法、装置、设备和存储介质 |
-
2021
- 2021-09-28 CN CN202111143375.XA patent/CN113886078B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008127947A2 (en) * | 2007-04-13 | 2008-10-23 | Isilon Systems, Inc. | Systems and methods of incremental computing and quota accounting |
CN102333103A (zh) * | 2010-07-12 | 2012-01-25 | 戴元顺 | 云存储系统 |
CN103823765A (zh) * | 2014-02-26 | 2014-05-28 | 浙江宇视科技有限公司 | 一种动态调整缓存刷新策略的方法和装置 |
CN107368359A (zh) * | 2017-05-31 | 2017-11-21 | 杭州大搜车汽车服务有限公司 | 一种异步任务执行方法及其存储介质、装置 |
CN109726007A (zh) * | 2017-10-31 | 2019-05-07 | 中兴通讯股份有限公司 | 一种容器编排配额管理方法和装置、及容器编排系统 |
WO2019219182A1 (en) * | 2018-05-16 | 2019-11-21 | Nokia Solutions And Networks Oy | Adaptive quota allocation |
CN109144727A (zh) * | 2018-08-21 | 2019-01-04 | 郑州云海信息技术有限公司 | 云数据系统中资源的管理方法和装置 |
CN109558218A (zh) * | 2018-12-04 | 2019-04-02 | 山东浪潮通软信息科技有限公司 | 一种基于Redis的分布式业务数据锁实现方法 |
CN109901798A (zh) * | 2019-02-27 | 2019-06-18 | 新华三技术有限公司成都分公司 | 数据存储方法及装置 |
CN112445857A (zh) * | 2019-08-28 | 2021-03-05 | 北京京东尚科信息技术有限公司 | 一种基于数据库的资源配额管理方法和装置 |
CN110519183A (zh) * | 2019-09-29 | 2019-11-29 | 北京金山云网络技术有限公司 | 一种节点限速的方法、装置、电子设备及存储介质 |
CN112015557A (zh) * | 2020-08-31 | 2020-12-01 | 北京金山云网络技术有限公司 | 资源调整方法、装置和服务器 |
CN112486694A (zh) * | 2020-11-30 | 2021-03-12 | 山东浪潮通软信息科技有限公司 | 一种基于Redis的网络锁处理方法及设备 |
Non-Patent Citations (1)
Title |
---|
《高能物理云平台中的弹性计算资源管理机制》;程振京 等;《计算机工程与应用》;20170430;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113886078A (zh) | 2022-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109493076B (zh) | 一种Kafka消息唯一消费方法、系统、服务器及存储介质 | |
CN108848039B (zh) | 服务器、消息分配的方法及存储介质 | |
US9405574B2 (en) | System and method for transmitting complex structures based on a shared memory queue | |
CN112650576B (zh) | 资源调度方法、装置、设备、存储介质及计算机程序产品 | |
US20160196293A1 (en) | Optimizing storage in a publish / subscribe environment | |
CN108737176B (zh) | 一种数据网关控制方法、电子设备、存储介质及架构 | |
CN104102693A (zh) | 对象处理方法和装置 | |
US20120224482A1 (en) | Credit feedback system for parallel data flow control | |
CN107343023A (zh) | 一种Mesos管理集群中的资源分配方法、装置及电子设备 | |
CN113364877A (zh) | 数据处理方法、装置、电子设备和介质 | |
CN111324425B (zh) | 一种数据访问方法、装置、设备及存储介质 | |
CN112600761A (zh) | 一种资源分配的方法、装置及存储介质 | |
CN112905314A (zh) | 异步处理方法、装置、电子设备、存储介质、及路侧设备 | |
US20070050447A1 (en) | Method and device arrangement for managing a client/server environment | |
CN112231106B (zh) | Redis集群的访问数据处理方法及装置 | |
US10467143B1 (en) | Event-driven cache | |
CN113010238A (zh) | 一种微应用调用接口的权限确定方法、装置和系统 | |
CN105975614A (zh) | 一种集群配置装置、一种更新数据的方法及装置 | |
CN113886078B (zh) | 基于动态阈值机制实现配额统一管理的方法、装置、电子设备及计算机可读存储介质 | |
CN110381150B (zh) | 区块链上的数据处理方法、装置、电子设备及存储介质 | |
CN112286930A (zh) | redis业务方资源共享的方法、装置、存储介质及电子设备 | |
CN111339114A (zh) | 一种数据访问方法、装置、设备及存储介质 | |
CN103973690A (zh) | 资源访问方法及资源访问装置 | |
CN113779412B (zh) | 一种基于区块链网络的消息触达方法、节点和系统 | |
CN115794396A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |