CN115080657A - 一种应用于分布式存储的操作令牌分配方法、系统及设备 - Google Patents

一种应用于分布式存储的操作令牌分配方法、系统及设备 Download PDF

Info

Publication number
CN115080657A
CN115080657A CN202110260550.7A CN202110260550A CN115080657A CN 115080657 A CN115080657 A CN 115080657A CN 202110260550 A CN202110260550 A CN 202110260550A CN 115080657 A CN115080657 A CN 115080657A
Authority
CN
China
Prior art keywords
user
token
tokens
token bucket
user token
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
Application number
CN202110260550.7A
Other languages
English (en)
Inventor
孔庆涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Group Shandong Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Shandong Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Group Shandong Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202110260550.7A priority Critical patent/CN115080657A/zh
Publication of CN115080657A publication Critical patent/CN115080657A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及信息技术领域,尤其涉及一种应用于分布式存储的操作令牌分配方法、系统及设备。其中,该方法包括:以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应;根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率;根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中;根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。通过监测到的用户令牌桶中的操作令牌数量,确定是否对响应用户令牌桶中的造作令牌的数量进行调整,可以提高系统资源利用率。

Description

一种应用于分布式存储的操作令牌分配方法、系统及设备
【技术领域】
本发明涉及信息技术领域,尤其涉及一种应用于分布式存储的操作令牌分配方法、系统及设备。
【背景技术】
分布式存储是一种更加先进的存储方式,相比于传统的集中式存储,分布式存储具有更强的扩展性、更低的成本,更广的应用范围等特点。而分布式存储往往采用存储池技术,仅能对支持对象数、容量等基本配额度进行管理,无法实现精确的服务质量(Qualityof Service,QoS)控制。现有技术中,通过采用令牌桶技术,对用户的读写操作指令进行控制可以实现QoS控制。具体为:设置读写操作令牌桶和读写操作宽带令牌桶来对每秒进行读写操作的次数和吞吐量进行控制。当用户想要进行读写操作时,需要从操作令牌桶和带宽令牌桶中都请求到令牌后才允许执行读写操作。而每个令牌桶中存有的令牌数量取决于令牌存入速率和令牌消耗速率。其中,令牌存入速率取决于该用户的QoS配额,令牌消耗速率取决于用户行为。但此种方法也存在一些缺陷,令牌存入速率长时间大于令牌消耗速率时,多余令牌会被丢弃,浪费运算及存储资源。而当令牌存入速率长时间小于令牌消耗速率时,用户无法进行有效的读写操作。
【发明内容】
为了解决上述问题,本发明实施例提供了一种应用于分布式存储的操作令牌分配方法、系统及设备,通过对全局令牌桶和用户令牌桶中的操作令牌数量进行监测,并根据用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌数量进行调整。
第一方面,本发明实施例提供了一种操作令牌分配方法,所述方法应用于操作令牌分配系统,包括:
以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应;
根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率;
根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中;
根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。
本发明实施例通过对全局令牌桶与用户令牌桶中的操作令牌数量进行监测,并根据多个用户令牌桶内的操作数量,确定是否对相应用户令牌桶内的操作令牌数量进行调整,提高了系统资源利用率,避免了用户令牌桶内的操作令牌溢出导致的系统资源浪费。
其中一种可能的实现方式中,所述方法还包括:
当检测到所述全局令牌桶中的操作令牌数量大于第一阈值时,对超出所述第一阈值的操作令牌进行丢弃。
其中一种可能的实现方式中,向所述多个用户令牌桶发放所述操作令牌的发放速率均为固定值;根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整,包括:
当至少一个用户令牌桶内的操作令牌数量大于第二阈值时,将所述至少一个用户令牌桶内的超出所述第二阈值的操作令牌存入所述全局令牌桶。
其中一种可能的实现方式中,向所述多个用户令牌桶发放所述操作令牌的发放速率均为动态值;根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整,包括:
当至少一个用户令牌桶内的操作令牌的数量大于第三阈值时,降低向所述至少一个用户令牌桶发放所述操作令牌的发放速率;
当至少一个用户令牌桶内的操作令牌的数量小于或者等于第三阈值时,提高向所述至少一个用户令牌桶发放所述操作令牌的发放速率。
其中一种可能的实现方式中,所述方法还包括:
当检测到所述全局令牌桶内未存储有操作令牌,并且检测到至少一个用户对相应用户令牌桶中的操作令牌的读写操作请求时,根据所述至少一个用户分别对应的读写操作阈值,确定是否从相应用户令牌桶为所述至少一个用户分配操作令牌。
其中一种可能的实现方式中,根据所述至少一个用户分别对应的读写操作阈值,确定是否从相应用户令牌桶为所述至少一个用户分配操作令牌,包括:
根据所述至少一个用户的读写操作请求,分别生成所述至少一个用户的放行参考值;
如果用户对应的所述放行参考值大于所述读写操作阈值,则不为相应用户分配操作令牌;否则,根据读写操作请求从用户令牌桶中为相应用户分配操作令牌。
第二方面,本发明实施例提供一种应用于分布式存储的操作令牌分配系统,包括:
操作令牌生成模块,用于以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应;
用户令牌分配模块,用于根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率;
所述用户令牌分配模块,还用于根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中;
所述用户令牌分配模块,还用于根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。
其中一种可能的实现方式中,还包括:
检测模块,用于当检测到所述全局令牌桶中的操作令牌数量大于第一阈值时,对超出所述第一阈值的操作令牌进行丢弃。
第三方面,本发明实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面所述的方法。
应当理解的是,本发明实施例的第二~第四方面与本发明实施例的第一方面的技术方案一致各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种操作令牌分配方法的场景示意图;
图2为本发明实施例提供的一种操作令牌分配方法的流程图;
图3为本发明实施例提供的另一种操作令牌分配方法的流程图;
图4为本发明实施例提供的一种操作令牌分配系统的结构示意图;
图5为本发明实施例提供的另一种操作令牌分配系统的结构示意图;
图6为本发明实施例提供的一种电子设备的结构示意图。
【具体实施方式】
为了更好的理解本说明书的技术方案,下面结合附图对本发明实施例进行详细描述。
本发明实施例通过设置上层的全局令牌桶和下层的用户令牌桶,并对全局令牌桶和用户令牌桶中的操作令牌数量进行监测。根据用户令牌桶中的操作令牌数量,确定是否对响应用户令牌桶中的造作令牌的数量进行调整。
图1为本发明实施例提供的一种应用于分布式存储的操作令牌分配方法的场景示意图,如图1所示,操作令牌生成模块以第一速率Tmax向全局令牌桶中写入操作令牌。全局令牌桶对写入的操作令牌进行储存。用户令牌分配模块根据多个用户的配置信息中的QoS配额信息,确定多个用户对应的操作令牌发放速率Ti,并以所述发放速率Ti将操作令牌发放至对应的用户令牌桶中。其中,由于每个用户的QoS配额信息均不相同,所以每个用户对应的操作令牌发放速率Ti也不相同。每个用户以不同的消耗速率T0使用用户令牌桶中的操作令牌。用户对用户令牌桶中操作令牌的消耗速率T0取决于用户行为,当用户的读写操作频率高时,对应的操作令牌消耗速率T0较高,当用户读写操作频率低时,对应的操作令牌消耗速率T0较低。
图2为本发明实施例提供的一种应用于分布式存储的操作令牌分配方法的流程图,所述方法应用于操作令牌分配系统,如图2所示,该方法包括:
步骤201,以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应。其中,由操作令牌分配系统中的操作令牌生成模块以第一速率向全局令牌桶写入操作令牌。全局令牌桶负责对操作令牌生成模块写入的操作令牌进行储存。操作令牌用与执行读写操作。具体的,用户在执行读写操作时,需要请求到对应的操作令牌才可以进行读写操作。在一些实施例中,可以为全局令牌桶设置操作令牌的储存数量的第一阈值,当检测到全局令牌桶中的令牌数量大于第一阈值时,可以对超出第一阈值的操作令牌进行丢弃,以免操作令牌堆积过多,影响系统性能。可选的的,所述第一阈值可以为全局令牌桶的操作令牌存储上限,当操作令牌分配系统中的检测模块检测到全局令牌桶内的令牌数量达到存储上限时,可以对超出存储上限的操作令牌进行丢弃。
步骤202,根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率。可选的,多个用户的配置信息可以为多个用户的QoS配额信息,操作令牌分配系统中的用户令牌分配模块根据每个用户的QoS配额信息,确定每个用户对应的操作令牌发放速率。由于每个用户的QoS配额信息中包含有该用户对应的用户令牌桶的操作令牌最大接收速率以及操作令牌数量存储上限等信息。所以,可以根据QoS配置信息中的操作令牌最大接收速率,确定向该用户令牌桶发放操作令牌的发放速率。
步骤203,根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中。可选的,可以由用户令牌分配模块将全局令牌桶中的操作令牌以所述发放速率分别发放至多个用户令牌桶中。在一些实施例中,向全局令牌桶中写入操作操作令牌的第一速率可以等于向关联的多个用户令牌桶发放操作令牌的发放速率之和。例如,全局令牌桶对应10个用户令牌桶,10个用户令牌桶的发放速率之和为每秒100个操作令牌,则向全局令牌桶中写入操作令牌的第一速率为每秒100个。
在一些实施例中,为了支撑更多的用户,可以对多个用户令牌桶的发放速率进行超分配额分配。例如,用户令牌分配模块根据配置信息确定的用户令牌桶的发放速率为每秒10个,用户令牌分配模块在实际进行发放时可以以每秒12个的速率进行发放,此时全局令牌桶中写入操作令牌的速率不发生改变,即,全局令牌桶中写入操作令牌的第一速率小于所有用户桶的发放速率之和。
步骤204,根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。具体的,对于以固定发放速率向用户令牌桶发放操作令牌的场景,对用户令牌桶内的操作令牌数量的调整方法可以为:为每个用户令牌桶设置一个操作令牌数量的第二阈值,当检测到至少一个用户令牌桶内的操作令牌数量大于第二阈值时,将至少一个用户令牌桶内的超出第二阈值的操作令牌存入全局令牌桶。可选的,可以由用户令牌分配模块负责对对用户令牌桶内的操作令牌的数量进行监测,并将超出第二阈值的操作令牌存入全局令牌桶,也可以设置独立的检测模块来完成上述操作。例如,用户令牌桶的第二阈值为100个,当用户令牌分配模块检测到该用户令牌桶内存有的操作令牌数量超过100个时,对超出100之外的操作令牌进行回收,并存入全局令牌桶中。通过上述方法,可以在用户读写操作较少时,避免用户令牌桶中的操作令牌数量过度溢出而导致的系统资源浪费。可选的,上述第二阈值可以为各个用户令牌桶的操作令牌存储上限。当检测到用户令牌桶内的操作令牌数量到达上限时,对超出用户令牌他上限的操作令牌进行回收并存入全局令牌桶。
在一些实施例中,对于以动态发放速率向用户令牌桶发放操作令牌的场景,用户令牌分配模块可以根据各个用户令牌桶中的操作令牌数量对操作令牌的发放速率进行调整,该方法具体包括:当至少一个用户令牌桶内的操作令牌的数量大于第三阈值时,降低向所述至少一个用户令牌桶发放所述操作令牌的发放速率。当至少一个用户令牌桶内的操作令牌的数量小于或者等于第三阈值时,提高向所述至少一个用户令牌桶发放所述操作令牌的发放速率。例如,第三阈值可以为用户令牌桶存储上限的70%,当用户令牌分配模块检测到用户令牌桶内的操作令牌数量大于70%时,可以降低向该用户令牌桶发放操作令牌的发放速率,当用户令牌分配模块检测到用户令牌桶内的操作令牌数量小于70%时,可以提高向该用户令牌桶发放操作令牌的发放速率。可选的,在提高向用户令牌桶发放操作令牌的发放速率时,不能超过根据配置获得的最大发放速率。例如,在QoS配置中,第一用户的最大发放速率为每秒10个操作令牌,则用户令牌分配模块对于第一用户对应的用户令牌桶的操作令牌发放速率可以在每秒0个到每秒10个之间。
在一些实施例中,当全局令牌桶内操作令牌存储量较少,而对应的多个用户存在高频率的读写操作时,可以对用户消耗对应用户令牌桶内的操作令牌的速率进行控制,该方法包括:当操作令牌分配系统中的检测模块检测到所述全局令牌桶内未存储有操作令牌时,可以向令牌争用模块发送工作信号,以使令牌争用模块进入工作状态。当令牌征用模块检测到至少一个用户对相应用户令牌桶中的操作令牌的读写操作请求时,可以根据所述至少一个用户分别对应的读写操作阈值,确定是否从相应用户令牌桶为所述至少一个用户分配操作令牌。由于用户在进行读写操作时,需要从用户令牌桶中请求到对应的操作令牌后才能进行读写操作,则可以设置一个读写操作阈值,对用户请求操作令牌的通过概率进行控制,进而达到降低用户消耗对应的用户令牌桶中操作令牌的速率。
在一些实施例中,在对用户请求操作令牌的通过概率进行控制时,可以结合用户的请求进行确定,如图3所示,该方法包括:
步骤301,根据所述至少一个用户的读写操作请求,分别生成所述至少一个用户的放行参考值。可选的,由于用户的读写操作请求实则为一段代码,则可以对读写操作请求进行哈希运算,并将哈希运算的结果与读写操作阈值取值范围的最大值进行取模运算,所得即为放行参考值。例如,对读写操作请求进行哈希运算的结果为10154,读写操作阈值的取值范围为0-100,则将10154与100进行取模运算得到的该请求的放行参考值为54。
步骤302,判断用户对应的所述放行参考值大于所述读写操作阈值。如果用户对应的放行参考值大于读写操作阈值,则执行步骤303。否则,执行步骤304。
步骤303,不为相应用户分配操作令牌。
步骤304,根据读写操作请求从用户令牌桶中为相应用户分配操作令牌。
例如,令牌争用模块根据用户的读写操作请求得到的放行参考值为60,该用户对应的读写操作阈值为70,由于放行参考值60小于对应的读写操作阈值70,则该用户的本次读写操作请求被通过,并从对应的用户令牌桶中为该用户分配操作令牌。由此可见,用户的读写操作阈值越大,该用户的读写操作请求被通过的概率越高。通过上述方法,对用户的读写操作请求的通过概率进行控制,在全局令牌桶中操作令牌较少时,实现有效的QoS保证。
对应上述方法,本发明实施例提供了一种应用于分布式存储的操作令牌分配系统,如图4所示,该系统包括:操作令牌生成模块401和用户令牌分配模块402。
操作令牌生成模块401,用于以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应;
用户令牌分配模块402,用于根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率;
用户令牌分配模块402,还用于根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中;
用户令牌分配模块402,还用于根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。
图4所示实施例提供的操作令牌分配系统可用于执行本说明书图1~图3所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
在一些实施例中,如图5所示,操作令牌分配系统还可以包括检测模块403。
检测模块403,用于当检测到所述全局令牌桶中的操作令牌数量大于第一阈值时,对超出所述第一阈值的操作令牌进行丢弃。
图5所示实施例提供的操作令牌分配系统可用于执行本说明书图1~图3所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
图6为本发明电子设备一个实施例的结构示意图,如图6所示,上述电子设备可以包括至少一个处理器;以及与上述处理器通信连接的至少一个存储器,其中:存储器存储有可被处理器执行的程序指令,上述处理器调用上述程序指令能够执行本发明图1~图3所示实施例提供的操作令牌分配方法。
图6示出了适于用来实现本发明实施方式的示例性电子设备的框图。图6显示的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:一个或者多个处理器610、通信接口620和存储器630,连接不同系统组件(包括存储器630、通信接口620和处理单元610)的通信总线940。
通信总线640表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器630可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)和/或高速缓存存储器。电子设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。存储器630可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器630中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本申请所描述的实施例中的功能和/或方法。
处理器610通过运行存储在存储器630中的程序,从而执行各种功能应用以及数据处理,例如实现本申请图1~图3所示实施例提供的操作令牌分配方法。
本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本申请图1~图3所示实施例提供的操作令牌分配方法。
上述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ReadOnly Memory;以下简称:ROM)、可擦式可编程只读存储器(Erasable Programmable ReadOnly Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network;以下简称:LAN)或广域网(Wide Area Network;以下简称:WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本说明书的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本说明书的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本说明书的实施例所属技术领域的技术人员所理解。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
需要说明的是,本说明书实施例中所涉及的终端可以包括但不限于个人计算机(Personal Computer;以下简称:PC)、个人数字助理(Personal Digital Assistant;以下简称:PDA)、无线手持设备、平板电脑(Tablet Computer)、手机、MP3显示器、MP4显示器等。
在本说明书所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本说明书各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本说明书各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

Claims (10)

1.一种应用于分布式存储的操作令牌分配方法,其特征在于,所述方法应用户操作令牌分配系统,包括:
以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应;
根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率;
根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中;
根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到所述全局令牌桶中的操作令牌数量大于第一阈值时,对超出所述第一阈值的操作令牌进行丢弃。
3.根据权利要求1或2所述的方法,其特征在于,向所述多个用户令牌桶发放所述操作令牌的发放速率均为固定值;根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整,包括:
当至少一个用户令牌桶内的操作令牌数量大于第二阈值时,将所述至少一个用户令牌桶内的超出所述第二阈值的操作令牌存入所述全局令牌桶。
4.根据权利要求1或2所述的方法,其特征在于,向所述多个用户令牌桶发放所述操作令牌的发放速率均为动态值;根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整,包括:
当至少一个用户令牌桶内的操作令牌的数量大于第三阈值时,降低向所述至少一个用户令牌桶发放所述操作令牌的发放速率;
当至少一个用户令牌桶内的操作令牌的数量小于或者等于第三阈值时,提高向所述至少一个用户令牌桶发放所述操作令牌的发放速率。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到所述全局令牌桶内未存储有操作令牌,并且检测到至少一个用户对相应用户令牌桶中的操作令牌的读写操作请求时,根据所述至少一个用户分别对应的读写操作阈值,确定是否从相应用户令牌桶为所述至少一个用户分配操作令牌。
6.根据权利要求5所述的方法,其特征在于,根据所述至少一个用户分别对应的读写操作阈值,确定是否从相应用户令牌桶为所述至少一个用户分配操作令牌,包括:
根据所述至少一个用户的读写操作请求,分别生成所述至少一个用户的放行参考值;
如果用户对应的所述放行参考值大于所述读写操作阈值,则不为相应用户分配操作令牌;否则,根据读写操作请求从用户令牌桶中为相应用户分配操作令牌。
7.一种应用于分布式存储的操作令牌分配系统,其特征在于,包括:
操作令牌生成模块,用于以第一速率向全局令牌桶中写入操作令牌,所述全局令牌桶关联多个用户令牌桶,所述多个用户令牌桶分别与多个用户对应;
用户令牌分配模块,用于根据所述多个用户的配置信息,确定分别向所述多个用户令牌桶发放所述操作令牌的发放速率;
所述用户令牌分配模块,还用于根据确定出的所述发放速率,将所述全局令牌桶中的操作令牌分别发放至所述多个用户令牌桶中;
所述用户令牌分配模块,还用于根据所述多个用户令牌桶内的操作令牌数量,确定是否对相应用户令牌桶内的操作令牌的数量进行调整。
8.根据权利要求7所述的系统,其特征在于,还包括:
检测模块,用于当检测到所述全局令牌桶中的操作令牌数量大于第一阈值时,对超出所述第一阈值的操作令牌进行丢弃。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至6任一所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至6任一所述的方法。
CN202110260550.7A 2021-03-10 2021-03-10 一种应用于分布式存储的操作令牌分配方法、系统及设备 Pending CN115080657A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110260550.7A CN115080657A (zh) 2021-03-10 2021-03-10 一种应用于分布式存储的操作令牌分配方法、系统及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110260550.7A CN115080657A (zh) 2021-03-10 2021-03-10 一种应用于分布式存储的操作令牌分配方法、系统及设备

Publications (1)

Publication Number Publication Date
CN115080657A true CN115080657A (zh) 2022-09-20

Family

ID=83241635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110260550.7A Pending CN115080657A (zh) 2021-03-10 2021-03-10 一种应用于分布式存储的操作令牌分配方法、系统及设备

Country Status (1)

Country Link
CN (1) CN115080657A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116233010A (zh) * 2023-03-09 2023-06-06 北京百度网讯科技有限公司 流量控制方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101557348A (zh) * 2009-05-25 2009-10-14 杭州华三通信技术有限公司 一种基于令牌桶的报文转发方法及装置
CN103763208A (zh) * 2014-01-29 2014-04-30 华为技术有限公司 数据流量限制方法及装置
US20160142323A1 (en) * 2014-11-17 2016-05-19 Software Ag Systems and/or methods for resource use limitation in a cloud environment
CN109861920A (zh) * 2019-01-16 2019-06-07 深圳市融汇通金科技有限公司 一种弹性限流的方法及装置
CN109936511A (zh) * 2017-12-19 2019-06-25 北京金山云网络技术有限公司 一种令牌获取方法、装置、服务器、终端设备及介质
CN111404836A (zh) * 2020-03-30 2020-07-10 北京小米移动软件有限公司 数据传输控制方法、装置、控制中心、服务器及介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101557348A (zh) * 2009-05-25 2009-10-14 杭州华三通信技术有限公司 一种基于令牌桶的报文转发方法及装置
CN103763208A (zh) * 2014-01-29 2014-04-30 华为技术有限公司 数据流量限制方法及装置
US20160142323A1 (en) * 2014-11-17 2016-05-19 Software Ag Systems and/or methods for resource use limitation in a cloud environment
CN109936511A (zh) * 2017-12-19 2019-06-25 北京金山云网络技术有限公司 一种令牌获取方法、装置、服务器、终端设备及介质
CN109861920A (zh) * 2019-01-16 2019-06-07 深圳市融汇通金科技有限公司 一种弹性限流的方法及装置
CN111404836A (zh) * 2020-03-30 2020-07-10 北京小米移动软件有限公司 数据传输控制方法、装置、控制中心、服务器及介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116233010A (zh) * 2023-03-09 2023-06-06 北京百度网讯科技有限公司 流量控制方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US11106579B2 (en) System and method to manage and share managed runtime memory for java virtual machine
JP7127010B2 (ja) リソースの割り当て方法、装置、電子設備、コンピュータ可読媒体およびコンピュータプログラム
WO2018120845A1 (zh) 资源分配的方法和资源管理器
US8429666B2 (en) Computing platform with resource constraint negotiation
US9760392B1 (en) Adaptive throttling in hybrid storage environments
CN110545246A (zh) 一种基于令牌桶的限流方法和装置
US8898674B2 (en) Memory databus utilization management system and computer program product
WO2023082560A1 (zh) 一种任务处理方法、装置、设备及介质
WO2024016596A1 (zh) 容器集群调度的方法、装置、设备及存储介质
CN106897144B (zh) 一种资源分配方法及装置
CN111045782A (zh) 日志处理方法、装置、电子设备和计算机可读存储介质
WO2016127291A1 (zh) 内存管理装置和方法
US20170212581A1 (en) Systems and methods for providing power efficiency via memory latency control
US9389997B2 (en) Heap management using dynamic memory allocation
WO2020259208A1 (zh) 内存调度方法、装置、设备及存储介质
CN112600761A (zh) 一种资源分配的方法、装置及存储介质
CN111464331B (zh) 一种线程创建的控制方法、系统及终端设备
US9697047B2 (en) Cooperation of hoarding memory allocators in a multi-process system
CN116737080A (zh) 分布式存储系统数据块管理方法、系统、设备及储存介质
CN111190719B (zh) 优化集群资源分配的方法、装置、介质及电子设备
CN115080657A (zh) 一种应用于分布式存储的操作令牌分配方法、系统及设备
CN114116231A (zh) 一种数据加载方法、装置、计算机设备及存储介质
CN114374657A (zh) 一种数据处理方法和装置
CN110381537B (zh) 一种基于QoE的带宽限速方法、装置、设备及存储介质
CN113259261B (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