一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

网络带宽限制方法、系统、电子设备及可读存储介质与流程

2022-05-18 08:47:35 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,特别是涉及一种网络带宽限制方法、一种网络带宽限制系统、一种电子设备和一种计算机可读存储介质。


背景技术:

2.目前,随着互联网业务的不断增加以及大数据的发展,需要存储的数据文件的数量逐渐增大,对象存储服务(object storage service,简称oss)成为互联网存储服务的业界标准。oss作为一个共用的、重带宽的基础设施服务,其可用于承载某个企业/公司的所有存储业务,但由于其带宽能力有限,需要要求对上层各个业务进行相关限制和熔断措施,否则很大可能将会影响到整个企业/公司的业务。
3.现有的带宽限制能力基本上都是qps(query per second,每秒请求数)限制,连接数限制等,这些带宽限制方式需要通过对单机进行网络限制实现,难以适应多种不同能力的机器。


技术实现要素:

4.本发明实施例的目的在于提供一种网络带宽限制方法、相应的一种网络带宽限制装置、相应的一种网络带宽的限制系统、一种电子设备和一种计算机可读存储介质,以实现对分布式的存储业务进行有效的带宽限制。具体技术方案如下:
5.在本发明实施的第一方面,首先提供了一种网络带宽限制方法,应用于分布式系统,所述分布式系统包括一个集中缓存计数中心和至少一个对象存储服务器,所述方法包括:
6.通过至少一个对象存储服务器接收客户端发送的业务请求;其中,每个对象存储服务器部署有流量监控计数装置;
7.通过各个流量监控计数装置根据所述业务请求实时检测流量数据,并向所述集中缓存计数中心发送所述流量数据;所述集中缓存计数中心用于基于所请求业务的业务等级实时配置限流阈值,以及对所述流量数据的流量总和进行计数;
8.通过各个流量监控计数装置根据所述限流阈值和所述流量总和,对所请求业务的网络带宽进行限制。
9.在本发明实施的第二方面,还提供了一种网络带宽限制系统,所述网络带宽限制系统部署有分布式系统,所述分布式系统包括一个集中缓存计数中心和至少一个对象存储服务器,其中,每个对象存储服务器部署有流量监控计数装置;
10.所述至少一个对象存储服务器用于接收客户端发送的业务请求;各个流量监控计数装置用于根据所述业务请求实时检测流量数据,并向所述集中缓存计数中心发送所述流量数据;
11.所述集中缓存计数中心用于基于所请求业务的业务等级实时配置限流阈值,以及对所述流量数据的流量总和进行计数;
12.各个流量监控计数装置还用于根据所述限流阈值和所述流量总和,对所请求业务的网络带宽进行限制。
13.在本发明实施例的又一方面,还提供了一种网络带宽限制装置,应用于分布式系统,所述分布式系统包括一个集中缓存计数中心和至少一个对象存储服务器,所述装置包括:
14.业务请求接收模块,位于所述对象存储服务器,用于接收客户端发送的业务请求;其中,每个对象存储服务器部署有流量监控计数装置;
15.流量数据监控模块,位于所述流量监控计数装置,用于根据所述业务请求实时检测流量数据,并向所述集中缓存计数中心发送所述流量数据;所述集中缓存计数中心用于基于所请求业务的业务等级实时配置限流阈值,以及对所述流量数据的流量总和进行计数;
16.带宽限制模块,位于所述流量监控计数装置,用于根据所述限流阈值和所述流量总和,对所请求业务的网络带宽进行限制。
17.在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述网络带宽限制方法的步骤。
18.在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述网络带宽限制方法的步骤。
19.本发明实施例提供的网络带宽限制方法及网络带宽限制系统,通过在分布式系统的存储业务中,在每个对象存储服务器中加入流量监控计数装置对业务请求所请求业务的流量大小进行监控,以及增加集中缓存计数中心对分布式系统中各个对象存储服务器的流量总和进行计数,并能够基于请求业务的业务等级实时配置限流阈值,以对所请求业务可能同时访问到的多台机器进行流量统计的基础上,对共享型机器实现业务需求的带宽阈值确定,能够高效地处理分布式存储业务带宽限制问题,实现对分布式系统中所请求业务的网络带宽进行限制,以及基于所实时配置的限流阈值,对所请求业务需要访问的不同能力的机器进行带宽限制,实现对存储业务的有效限制。
附图说明
20.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
21.图1为本发明实施例中所提供的网络带宽限制系统的框架示意图;
22.图2为本发明实施例中所提供的网络带宽限制方法的步骤流程图;
23.图3为本发明实施例中所提供的网络带宽限制方法的另一种步骤流程图;
24.图4为本发明实施例中所提供的网络带宽限制的应用场景图;
25.图5为本发明实施例中所提供的网络带宽限制装置的结构示意图;
26.图6为本发明实施例中的一种电子设备实施例的结构示意图。
具体实施方式
27.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
28.在对象存储服务oss中需要对网络带宽进行限制,现有的带宽限制能力基本上都是qps限制,连接数限制等,这些带宽限制方式都是将整体能力限制目标下发到单机进行网络限制,即需要通过对单机进行网络限制实现,其一般都是在服务启动前预设置阈值,这种方式难以适应多种不同能力的机器,对于一些共享型机器将会难以确定阈值;此外,某个业务的进行可能会同时需要访问多台机器,由于难以适应多种不同能力的机器,单机限制无法按照业务需求限制带宽。即重存储、重带宽的对象存储服务单机限制效率低且不准确,也无法按业务进行网络带宽的限制。
29.本发明实施例的核心思想之一在于通过在每个对象存储服务器里加入流量监控计数装置以实时检测流量大小,以及通过增加集中缓存计数中心对全局业务或某个业务对象承载的整体访问带宽进行阈值配置,实现对分布式中存储业务的有效限制。
30.参照图1,示出了本发明实施例中所提供的网络带宽限制系统的框架示意图,网络带宽限制系统包括客户端101以及所部署的分布式系统,分布式系统可以包括一个集中缓存计数中心102和至少一个对象存储服务器103。其中,在每个对象存储服务器103中均可分别部署有流量监控计数装置104,集中缓存计数中心102可以为独立于服务器的数据计数服务。
31.客户端101在针对存储对象进行请求时,可与对象存储服务器103进行通信连接,此时所请求读写的业务可能需要访问多台机器,客户端101所直连的对象存储服务器103可能是在分布式系统中所涉及到的具有多种不同能力机器中的某个或某些对象存储服务器,即可通过所连接的对象存储服务器接收客户端发送的业务请求,以通过所连接的对象存储服务器为所发送请求的客户端提供所需的存储对象,实现对用户的业务支持。
32.其中,为了在响应接收所请求的对象存储时对分布式系统中的网络带宽进行限制,可通过分布式系统中所部署的集中缓存计数中心102和流量监控计数装置104实现对分布式存储业务的带宽限制。
33.具体的,在对象存储服务器103中部署的流量监控计数装置104主要可以用于根据所接收的业务请求实时检测流量数据,以通过各个计数装置104对单个对象存储服务器103的单机流量数据进行计数,且可向独立于服务器的集中缓存计数中心102发送其统计的流量数据,以便集中缓存计数中心102能够基于所请求业务的业务等级实时配置限流阈值,以及对流量数据的流量总和进行计数,以在对所请求业务可能同时访问到的多台机器进行流量统计的基础上,实现对共享型机器实现业务需求的带宽阈值确定,并在对分布式系统中的全局流量进行统计之后,各个流量监控计数装置可根据所配置的限流阈值和所统计的流量总和,对在各个对象存储服务器上所请求业务的整体访问带宽进行有效限制。
34.其中,基于所请求业务的业务等级进行实时配置的限流阈值,可通过对所请求业务的请求量赋予令牌的定义,配置业务令牌桶阈值实现,具体的系统可以恒定的速度往令牌桶里放入令牌,如果请求需要被处理,则需要先从桶里获取一个令牌,当桶里没有令牌可取时,则拒绝服务,基于令牌实现对请求量的限制进而实现对所请求业务的带宽限制。
35.在所提供的网络带宽限制系统中,可采用local(即单个流量监控计数装置与单个对象存储服务器一一对应的方式)和分布式(即将与多个流量监控计数装置与单个集中缓存计数中心进行对应的方式)架构对带宽进行限制,通过local中流量监控计数装置的部署可防止本机网卡资源耗尽,通过分布式中集中缓存计数中心的部署可防止bucket(即存储
桶,是对象的载体,可以理解成存放对象的容器)消耗过高带宽资源,同时分布式还可以控制整个业务的带宽,防止整个机房带宽资源的耗尽,实现带宽限制的灵活性、准确性和高效性,以及提高基础存储服务的稳定性和抗灾性。
36.参照图2,示出了本发明实施例中所提供的网络带宽限制方法的步骤流程图,应用于分布式系统,分布式系统包括一个集中缓存计数中心和至少一个对象存储服务器。其中,在每个存储服务器中均可分别部署有流量监控计数装置,集中缓存计数中心可以为独立于服务器的数据计数服务,具体可以包括如下步骤:
37.步骤201,通过至少一个对象存储服务器接收客户端发送的业务请求;
38.客户端在针对对象存储进行业务请求时,可与对象存储服务器进行通信连接,此时所请求读写的业务可能需要访问多台机器,客户端所直连的对象存储服务器可能是在分布式系统中所涉及到的具有多种不同能力机器中的某个或某些对象存储服务器,即可通过所连接的对象存储服务器接收客户端发送的业务请求,以通过所连接的对象存储服务器为所发送请求的客户端提供所需的存储对象,实现对用户的业务支持。
39.步骤202,通过各个流量监控计数装置根据业务请求实时检测流量数据,并向集中缓存计数中心发送流量数据;
40.为了在响应接收所请求的对象存储时对分布式系统中的网络带宽进行限制,可通过分布式系统中所部署的集中缓存计数中心和流量监控计数装置实现对分布式存储业务的带宽限制。
41.具体的,可通过在每个对象存储服务器里加入流量监控计数装置以实时检测流量大小,实现对单个对象存储服务器的单机流量数据进行计数,以便后续基于所配置的针对单机可承受带宽的阈值进行带宽限制;还可以通过针对每个对象存储服务器所请求单机流量数据的计数,实现对分布式系统的存储业务所访问网络带宽的流量总和进行统计,以便后续对整体访问带宽进行阈值判断。
42.在实际应用中,在通过所部署的各个流量监控计数装置对各个对象存储服务器中所请求业务的流量数据进行实时检测后,可向独立于服务器的集中缓存计数中心发送其统计的流量数据,以便集中缓存计数中心能够基于所请求业务的业务等级实时配置限流阈值,以及对流量数据的流量总和进行计数。其中,所配置的限流阈值并不是预先设定的,而是能够基于不同的业务等级所对应的需求进行实时设定的,基于业务的实时设定能够实现按照真实业务配置带宽限制阈值,为不同等级业务灵活的分配网络带宽资源,从而可极大地提高资源分配能力,且能优先保障公司重点业务的存储和下载,提高公司的业务资源调度灵活性,保障企业重点业务的稳定持续运行。
43.其中,进行实时配置的限流阈值,可通过对所请求业务的请求量赋予令牌的定义,配置业务令牌桶阈值实现,具体的系统可以恒定的速度往令牌桶里放入令牌,如果请求需要被处理,则需要先从桶里获取一个令牌,当桶里没有令牌可取时,则拒绝服务,基于令牌实现对请求量的限制进而实现对所请求业务的带宽限制。
44.步骤203,通过各个流量监控计数装置根据限流阈值和流量总和,对所请求业务的网络带宽进行限制。
45.本发明实施例中,对分布式系统中的网络带宽进行限制,可通过分布式系统中所部署的集中缓存计数中心和流量监控计数装置实现对分布式存储业务的带宽限制。
46.具体可在对分布式系统中的全局流量进行统计之后,通过部署在对象存储服务器上的各个流量监控计数装置根据所配置的限流阈值和所统计的流量总和,对在各个对象存储服务器上所请求业务的整体访问带宽进行有效限制,具体可将所统计的流量总和基于所配置的阈值进行阈值判断,并基于阈值比较的结果确定是否对当前分布式系统的带宽执行限制指令。
47.在本发明实施例中,通过在分布式系统的存储业务中,在每个对象存储服务器中加入流量监控计数装置对业务请求所请求业务的流量大小进行监控,以及增加集中缓存计数中心对分布式系统中各个对象存储服务器的流量总和进行计数,并能够基于请求业务的业务等级实时配置限流阈值,以对所请求业务可能同时访问到的多台机器进行流量统计的基础上,对共享型机器实现业务需求的带宽阈值确定,能够高效地处理分布式存储业务带宽限制问题,实现对分布式系统中所请求业务的网络带宽进行限制,以及基于所实时配置的限流阈值,对所请求业务需要访问的不同能力的机器进行带宽限制,实现对存储业务的有效限制。
48.参照图3,示出了本发明实施例中所提供的网络带宽限制方法的另一种步骤流程图,具体可以包括如下步骤:
49.步骤301,通过对象存储服务接口接收客户端发送的针对所请求业务的读写请求;
50.在本发明实施例中,客户端与对象存储服务器可通过对象存储服务接口进行通信连接。
51.具体的,在通过至少一个对象存储服务器接收客户端发送的业务请求时,主要是通过对象存储服务接口接收客户端发送的针对所请求业务的读写请求,此时对象存储接口可响应读写请求中所读写的存储对象,确定所请求业务所在的对象存储服务器,然后通过对象存储接口将客户端与所确定的相应对象存储服务器进行直连操作,完成客户端与对象存储服务器的通信连接。
52.步骤302,按照预设时间周期统计流量数据,并向集中缓存计数中心发送所统计的流量数据;
53.为了在响应接收所请求的对象存储时对分布式系统中的网络带宽进行限制,可通过分布式系统中所部署的集中缓存计数中心和流量监控计数装置实现对分布式存储业务的带宽限制。
54.具体的,可通过在每个对象存储服务器里加入流量监控计数装置以实时检测流量大小,实现对单个对象存储服务器的单机流量数据进行计数,以便后续基于所配置的针对单机可承受带宽以及整体访问带宽的阈值进行带宽限制。
55.流量监控计数装置对流量数据的实时检测操作,可通过至少一个流量监控计数装置分别按照预设时间周期对相应读写请求所请求业务的流量进行统计,具体可以表现为利用时间窗口(即特定时间段)在数据流上滑动以计算一定时间内的传输流量,然后可以分别将所统计的流量数据定时,即按照预设时间间隔,例如间隔1分钟推送给集中缓存计数中心,以通过在累计读取特定字节(表现为实时统计与定时数据推送)后再向集中缓存计数中心提交数据,大大减少与缓存计数中心的交互,提高整个系统的性能。
56.在一种优选的实施例中,可通过集中缓存计数中心对各个流量监控计数装置发送的流量数据进行流量总和的计数,以实现对所请求业务可能同时访问到的多台机器进行流
量统计。
57.集中缓存计数中心能够基于redis(本质上是一个key-value存储系统)构建,在进行流量总和的统计时,首先可获取所发送流量数据的各个流量监控计数装置所在的对象存储服务器,确定各个流量数据相应请求业务的业务对象载体,所确定的业务对象载体可以指的是对于分布式的存储业务中,所请求业务所需访问到的机器,其可以包括所请求业务需要访问的单机、用于承载业务的bucket以及系统全局,以结合redis的evalsha命令(通过内置的lua解释器,使执行lua脚本后返回数据)保证lua脚本原子性执行特性(即操作不可中断性),利用lua脚本中原子增操作,基于与流量数据相应的对象载体计算各个单机在预设时间段内的流量总和,以及通过对各个单机在预设时间段内的流量总和计算得到在预设时间段内业务全局以及业务bucket的流量总和,即计算各个单机的流量总和、业务全局的流量总和以及业务bucket的流量总和,以便后续基于所配置的针对单机可承受带宽以及整体访问带宽的阈值进行带宽限制。
58.其中,集中缓存计数中心能够基于redis(本质上是一个key-value存储系统)构建,此时在进行计数时,可将业务对象载体与其在预设时长内的流量总和分别作为键值对存储至集中缓存计数中心,例如将内部使用bucket名作为计数的键key,针对此bucket某个时间段内的流量和作为值value进行存储,以便对业务全局的流量总和的计算。
59.在一种优选的实施例中,集中缓存计数中心还可基于所请求业务的业务等级实时配置限流阈值,以基于业务的实时设定能够实现按照真实业务配置带宽限制阈值,为不同等级业务灵活的分配网络带宽资源,从而可极大地提高资源分配能力。具体的,可通过集中缓存计数中心基于所请求业务的业务等级不同配置不同的可承受带宽阈值,其针对每个级别的请求业务所配置的可承受带宽阈值可以包括单机可承受带宽阈值、bucket级别可承受带宽阈值以及系统全局可承受带宽阈值,此时集中缓存计数中心可向各个流量监控计数装置下发限流阈值,以进行后续的带宽限制。
60.步骤303,根据基于所请求业务的业务等级实时配置限流阈值与所计数的流量总和进行阈值比较,在阈值比较结果为带宽上限时对所请求业务的网络带宽进行限制。
61.基于所部署的集中缓存计数中心和流量监控计数装置实现对分布式存储业务的带宽限制,具体可通过将所统计的流量总和基于所配置的限流阈值进行阈值比较实现,即可根据阈值比较结果对所请求业务的网络带宽进行限制。
62.其中,所基于业务需求配置的限流阈值,可以包括所配置的单机可承受带宽阈值、所配置的bucket级别可承受带宽阈值以及所配置的系统全局可承受带宽阈值,以分别对单个存储对象服务器(即单机)、某个bucket承载以及整个分布式存储业务的网络带宽进行阈值限制。
63.具体的,可结合令牌桶限流算法(是网络流量整形(traffic shaping)和速率限制(ratelimiting)中最常使用的一种算法,可用来控制发送到网络上的数据的数目,并允许突发数据的发送)对实时的数据统计进行判断,即可分别将在预设时间段内的流量总和、在预设时间段内的业务bucket的流量总和、以及在预设时间段内的业务全局的流量总和,依次与所配置的单机可承受带宽阈值、所配置的bucket级别可承受带宽阈值以及所配置的系统全局可承受带宽阈值进行阈值比较,然后在阈值比较结果为带宽上限时,即在阈值比较结果为单机带宽上限或bucket级别带宽上限或系统业务全局带宽上限时,对所请求业务的
网络带宽进行限制,实现对视频领域超大文件下载占用超大带宽进行有效限制。
64.所进行的阈值比较可以是按照前述顺序进行,即可首先分别判断单个对象存储服务器中所实时检测的流量数据是否超过单机可承受带宽阈值,若在预设时间段内各个单机的流量总和超过所配置的单机可承受带宽阈值,则表示此时单机带宽上限,需要对分布式存储业务的访问带宽进行限流;否则可以继续判断在预设时间段内业务bucket的流量总和是否超过bucket级别可承受带宽阈值,若超过此阈值则表示达到bucket级别带宽上限,此时同样需要分布式存储业务的访问带宽进行限流;否则可以继续判断基于各个业务载体流量总和计算得到的预设时长内业务全局的流量总和是否超过系统全局可承受带宽阈值,若超过此阈值则表示整体的系统业务全局带宽上限,此时同样需要分布式存储业务的访问带宽进行限流,否则可以对所请求的业务对象进行正常传输,即正常为客户端用户提供业务支持。
65.对所请求业务的网络带宽进行限制,流量监控计数装置所执行的带宽限流方式,可通过各个流量监控计数装置生成针对所请求业务的带宽限制信息,并向客户端发送带宽限制信息,以通过所发送的带宽限制信息用于在客户端告知用户降低对所请求业务的请求量。
66.在实际应用中,分布式系统与客户端之间的通信传输可采用nginx形式发送,带宽限制信息可表现为预先协定的用于表示带宽达到上限的nginx状态码,在需要对带宽进行限制时,可通过流量监控计数装置执行限流指令,此限流指令可将预先协定的nginx状态码发送给客户端,以提示用户放低请求量。
67.在本发明实施例中,通过在分布式系统的存储业务中,在每个对象存储服务器中加入流量监控计数装置对业务请求所请求业务的流量大小进行监控,以及增加集中缓存计数中心对分布式系统中各个对象存储服务器的流量总和进行计数,并能够基于请求业务的业务需求实时配置业务令牌阈值,以对所请求业务可能同时访问到的多台机器进行流量统计的基础上,对共享型机器实现业务需求的带宽阈值确定,能够高效地处理分布式存储业务带宽限制问题,实现对分布式系统中所请求业务的网络带宽进行限制,满足对存在多种不同能力机器的情况下对存储业务的有效限制。
68.参照图4,示出了本发明实施例中所提供的网络带宽限制的应用场景图,其应用场景可应用于如图1所示的网络带宽限制系统,其可适用于需要使用对象存储服务,具有海量数据传输的,需要对业务分级、限制、熔断的企业。
69.在本发明实施例中,对分布式系统中的网络带宽进行限制,可通过分布式系统中所部署的装置a(即流量监控计数装置)和装置b(即集中缓存计数中心)实现对分布式存储业务的带宽限制。
70.其中,流量监控计数装置主要可部署于对象存储服务器中其可负责按照预设时间周期统计流量并按照预设时间间隔将数据推送给装置b,且负责判断是否要进行限流操作,若是则执行限流指令;而集中缓存计数中心独立于业务的数据计数服务,一方面作可为业务配置(config)流量上限中心(指的是限流的配置,具体可通过配置业务令牌桶阈值实现),另一方面还可作为业务bucket以及整体流量原子计数(count)中心,其相当于独立线程置的运行并不会影响业务的正常运行。即可通过在每个对象存储服务器里加入流量监控计数装置a以实时检测流量大小,以及通过增加集中缓存计数中心对全局业务或某个业务
承载的整体访问带宽进行阈值配置,实现对分布式中存储业务的有效限制。
71.通过流量监控计数装置(即装置a)和集中缓存计数中心(即装置b)对分布式存储业务进行带宽限制的过程可以如下:
72.i.客户端与对象存储服务器的连接过程:用户可通过客户端的http协议(hyper text transfer protocol,超文本传输协议)发起读或写请求到oss的其中一台服务器(指的是所请求文件所在的服务器,即对象存储服务器),完成客户端和服务器之间所建立的数据传输连接;
73.ii.流量实时检测过程:在每个对象存储服务器里加入的流量监控计数装置在oss服务与客户端之间进行数据传输时,可以按照预设时间周期,具体可利用时间窗口在数据流上滑动以计算一定时间内的传输流量(即实时检测流量数据);
74.iii.流量总和统计过程:流量监控计数装置可以按照预设时间间隔,例如间隔1分钟将统计的数据推送到集中缓存计数中心,此时集中缓存计数中心可以利用redis原子增操作实时计算业务全局以及业务对象载体bucket的流量,其内部可使用bucket名作为计数key,此段时间内的流量总和为value进行存储;
75.iv.集中缓存计数中心可将实时计算的流量总和,以及基于所请求业务的业务等级所对应的需求实时配置的业务令牌桶阈值一起下发到流量监控计数装置;
76.v.阈值比较过程:流量监控计数装置可采用令牌桶限流算法进行阈值比较,在阈值比较结果为带宽上限时对带宽进行限制,其中令牌桶限流算法可以表现为流量监控计数装置根据所配置的业务令牌桶阈值,将各个单机在预设时间段内的流量总和、在预设时间段内的业务bucket的流量总和、以及在预设时间段内的业务全局的流量总和,按照顺序分别与所配置的单机可承受带宽阈值、所配置的bucket级别可承受带宽阈值以及所配置的系统全局可承受带宽阈值这三个阈值进行比较。即在其阈值比较结果为单机带宽上限、bucket级别带宽上限以及系统业务全局带宽上限的情况下均需要对所请求业务的网络带宽进行限制,否则可以对所请求的业务对象进行正常传输,即正常为客户端用户提供业务支持;
77.vi.在确定需要对带宽进行限制的情况下,可通过流量监控计数装置执行限流指令,此限流指令可将预先协定的nginx状态码发送给客户端,以提示用户放低请求量。
78.本发明实施例中,通过在每个对象存储服务器里加入流量监控计数装置以实时检测流量大小,以及通过增加集中缓存计数中心对全局业务或某个业务对象承载的整体访问带宽进行阈值配置,实现对分布式中存储业务的有效限制。
79.需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
80.参照图5,示出了本发明实施例中所提供的网络带宽限制装置的结构示意图,应用于分布式系统,所述分布式系统包括一个集中缓存计数中心和至少一个对象存储服务器,具体可以包括如下模块:
81.业务请求接收模块501,位于所述对象存储服务器,用于接收客户端发送的业务请
求;其中,每个对象存储服务器部署有流量监控计数装置;
82.流量数据监控模块502,位于所述流量监控计数装置,用于根据所述业务请求实时检测流量数据,并向所述集中缓存计数中心发送所述流量数据;所述集中缓存计数中心用于基于所请求业务的业务等级实时配置限流阈值,以及对所述流量数据的流量总和进行计数;
83.带宽限制模块503,位于所述流量监控计数装置,用于根据所述限流阈值和所述流量总和,对所请求对象的网络带宽进行限制。
84.在本发明的一种实施例中,所述业务请求包括针对所请求业务的读写请求,流量数据监控模块502可以包括如下子模块:
85.流量数据统计子模块,位于所述流量监控计数装置,用于分别按照预设时间周期对相应读写请求所请求业务的流量进行统计,并分别将所统计的流量数据按照预设时间间隔推送给所述集中缓存计数中心。
86.在本发明的一种实施例中,所述集中缓存计数中心基于redis构建,所述装置还可以包括如下模块:
87.流量总和计数模块,位于集中缓存计数中心,用于对各个流量监控计数装置发送的流量数据进行流量总和的计数;
88.流量总和计数模块可以包括如下子模块:
89.对象载体确定子模块,用于获取所发送流量数据的各个流量监控计数装置所在的对象存储服务器,确定各个流量数据相应请求业务的业务对象载体;其中,所述业务对象载体包括所请求业务需要访问的单机、用于承载业务的bucket以及系统全局;
90.流量总和计数子模块,位于所述集中缓存计数中心,用于基于与各个业务对象载体相应的流量数据计算在预设时间段内各个单机的流量总和,以及通过对单机在预设时间段内的流量总和计算得到在预设时间段内业务全局以及业务bucket的流量总和;其中,所述业务对象载体与其在预设时间段内的流量总和分别作为键值对存储至所述集中缓存计数中心。
91.在本发明的一种实施例中,所述装置还可以包括如下模块:
92.限流阈值下发模块,位于所述集中缓存计数中心,用于向各个流量监控计数装置下发限流阈值,所述限流阈值包括与所请求业务的业务等级不同进行配置的不同可承受带宽阈值;其中,针对每个级别的请求业务所配置的可承受带宽阈值包括单机可承受带宽阈值、bucket级别可承受带宽阈值以及系统全局可承受带宽阈值。
93.在本发明的一种实施例中,所述流量总和包括各个单机在预设时间段内的流量总和、在预设时间段内的业务bucket的流量总和、以及在预设时间段内的业务全局的流量总和;带宽限制模块503可以包括如下子模块:
94.阈值比较子模块,位于所述量监控计数装置,用于分别将所述各个单机在预设时间段内的流量总和、在预设时间段内的业务bucket的流量总和、以及在预设时间段内的业务全局的流量总和,依次与所配置的单机可承受带宽阈值、所配置的bucket级别可承受带宽阈值以及所配置的系统全局可承受带宽阈值进行阈值比较;
95.带宽限制子模块,用于在阈值比较结果为带宽上限时,对所请求业务的网络带宽进行限制。
96.在本发明的一种实施例中,带宽限制子模块可以包括如下单元:
97.带宽限制单元,用于在所述阈值比较结果为单机带宽上限或bucket级别带宽上限或系统业务全局带宽上限时,对所请求业务的网络带宽进行限制;其中,各个单机在预设时间段内的流量总和超过所配置的单机可承受带宽阈值时表示单机带宽上限,在预设时间段内的业务bucket的流量总和超过bucket级别可承受带宽阈值时表示bucket级别带宽上限;在预设时间段内的业务全局的流量总和超过系统全局可承受带宽阈值时表示系统业务全局带宽上限。
98.在本发明的一种实施例中,带宽限制单元可以包括如下子单元:
99.带宽限制子单元,位于所述流量监控计数装置,用于生成针对所请求业务的带宽限制信息,并向客户端发送所述带宽限制信息;所述带宽限制信息用于在客户端告知用户降低对所请求业务的请求量。
100.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
101.本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
102.存储器603,用于存放计算机程序;
103.处理器601,用于执行存储器603上所存放的程序时,实现如下步骤:
104.通过至少一个对象存储服务器接收客户端发送的业务请求;其中,每个对象存储服务器部署有流量监控计数装置;
105.通过各个流量监控计数装置根据所述业务请求实时检测流量数据,并向所述集中缓存计数中心发送所述流量数据;所述集中缓存计数中心用于基于所请求业务的业务等级实时配置限流阈值,以及对所述流量数据的流量总和进行计数;
106.通过各个流量监控计数装置根据所述限流阈值和所述流量总和,对所请求业务的网络带宽进行限制。
107.上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
108.通信接口用于上述终端与其他设备之间的通信。
109.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
110.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
111.在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可
读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述网络带宽限制方法的步骤。
112.在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述网络带宽限制方法的步骤。
113.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。
114.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
115.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
116.以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献