CN109246033A - 一种请求处理方法、装置、设备及可读存储介质 - Google Patents

一种请求处理方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN109246033A
CN109246033A CN201811093852.4A CN201811093852A CN109246033A CN 109246033 A CN109246033 A CN 109246033A CN 201811093852 A CN201811093852 A CN 201811093852A CN 109246033 A CN109246033 A CN 109246033A
Authority
CN
China
Prior art keywords
request
target latency
upper limit
limit value
time
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.)
Granted
Application number
CN201811093852.4A
Other languages
English (en)
Other versions
CN109246033B (zh
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201811093852.4A priority Critical patent/CN109246033B/zh
Publication of CN109246033A publication Critical patent/CN109246033A/zh
Application granted granted Critical
Publication of CN109246033B publication Critical patent/CN109246033B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种请求处理方法,该方法包括以下步骤:接收目标请求,并确定目标请求指定读/写的数据大小;将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;为目标请求设置目标时间标签获得目标等待请求,并将目标等待请求放入等待队列中;在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。如此,便可以根据时间标签,实现对带宽的控制。按照时间,有计划控制读写请求,可准确、稳定地控制带宽,进一步可提升业务稳定性。本发明还公开了一种请求处理装置、设备及可读存储介质,具有相应的技术效果。

Description

一种请求处理方法、装置、设备及可读存储介质
技术领域
本发明涉及分布式存储技术领域,特别是涉及一种请求处理方法、装置、设备及可读存储介质。
背景技术
在分布式存储中,根据不同业务需求需要对分布式存储***中的多个卷进行带宽控制,以提高服务质量。
当前,比较成熟的卷带宽控制方法是基于令牌桶算法实现的。基于令牌桶算法的卷带宽控制方法具体实现过程是:
在对卷的读写路径上设置一个令牌桶控制单元,每一个读写请求在通过令牌桶控制单元时,需要根据该请求的数据大小从令牌桶中获取相应数量的令牌,若令牌桶中令牌数充足,可以获取到足够的令牌,则可以继续完成后续操作;若令牌桶中的令牌数小于该请求的数据大小,将获取不到足够的令牌,则当前读写请求就会阻塞,直到令牌桶中的令牌得到更新,从而能获取到令牌以继续完成后续操作。由此,只需要控制向令牌桶添加令牌的速度就可以达到控制带宽的效果。但是,当对卷的读写压力不均匀时,令牌桶中就会积累一定量的令牌,某一个时间段内令牌桶中的令牌数超过预期值,导致该时间段带宽超过限制值,进而对存储***产生冲击,影响业务稳定性。
综上所述,如何有效地解决卷带宽控制等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种请求处理方法、装置、设备及可读存储介质,以控制卷带宽,提高业务稳定性。
为解决上述技术问题,本发明提供如下技术方案:
一种请求处理方法,包括:
接收目标请求,并确定所述目标请求指定读/写的数据大小;
将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;
为所述目标请求设置所述目标时间标签获得目标等待请求,并将所述目标等待请求放入等待队列中;
在当前时间到达或超过所述目标时间标签时,对所述目标等待请求放行并提供所述目标等待请求对应的数据服务。
优选地,将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签,包括:
将数据大小输入至Ttag(i)=Ttag(i-1)+F(i)/V中进行计算,获得目标时间标签Ttag(i);其中,F(i)为所述数据大小,V为卷带宽上限值,Ttag(i-1)为当前最新等待请求的时间标签。
优选地,将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签,包括:
若无最新等待请求,则将当前时间作为所述目标时间标签。
优选地,所述在当前时间到达或超过所述目标时间标签时,对所述目标等待请求放行并提供所述目标等待请求对应的数据服务,包括:
在所述目标等待请求位于所述等待队列的队首时,读取所述目标时间标签;
判断当前时间是否到达或超过所述目标时间标签;
如果是,则对所述目标等待请求放行并提供所述目标等待请求对应的数据服务。
优选地,在对所述目标等待请求放行并提供所述目标等待请求对应的数据服务之后,还包括:
将所述目标等待请求从所述等待队列中删除。
优选地,在将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签之前,还包括:
获取带宽上限值,并将所述带宽上限值设置在预设的时间标签计算模型中。
优选地,还包括:
接收带宽上限值调整请求,并将所述时间标签计算模型中所述带宽上限值调整为所述带宽上限值调整请求指定的目标带宽上限值。
一种请求处理装置,包括:
目标请求接收模块,用于接收目标请求,并确定所述目标请求指定读/写的数据大小;
目标时间标签获得模块,用于将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;
目标等待请求获得模块,用于为所述目标请求设置所述目标时间标签获得目标等待请求,并将所述目标等待请求放入等待队列中;
目标等待请求处理模块,用于在当前时间到达或超过所述目标时间标签时,对所述目标等待请求放行并提供所述目标等待请求对应的数据服务。
一种请求处理设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述请求处理方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述请求处理方法的步骤。
应用本发明实施例所提供的方法,接收目标请求,并确定目标请求指定读/写的数据大小;将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;为目标请求设置目标时间标签获得目标等待请求,并将目标等待请求放入等待队列中;在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。
在接收到目标请求之后,首先确定该目标请求指定读或指定写的数据大小(如5M)。然后,将该数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,可获得目标时间标签。为目标请求设置目标时间标签,得到目标等待请求,并将目标等待请求放入等待队列中,仅在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。也就是说,通过对每个读写请求根据其指定要读/写的数据大小及卷带宽上限值设置时间标签,并采用等待队列的方式,将读写请求按计划排在时间轴上,当时间到达某一读写请求的时间标签,该请求即可进行后续操作。如此,便可以根据时间标签,实现对带宽的控制。按照时间,有计划控制读写请求,可准确、稳定地控制带宽,进一步可提升业务稳定性。
相应地,本发明实施例还提供了与上述请求处理方法相对应的请求处理装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种请求处理方法的实施流程图;
图2为本发明实施例中一种请求处理方法的具体实施流程图;
图3为本发明实施例中一种请求处理装置的结构示意图;
图4为本发明实施例中一种请求处理设备的结构示意图;
图5为本发明实施例中一种请求处理设备的具体结构示意图。
具体实施方式
本发明的核心是提供一种请求处理方法,通过对接收到的请求,设定相应处理时机进而控制请求对应的数据传输的带宽,进一步提升业务稳定性。具体的,即对接收到的每个读写请求,都按照先后顺序根据其数据大小及带宽预期值设置时间标签,并将设置了时间标签的请求放入一个等待队列中,即每个读写请求都根据其数据大小及带宽预期值按计划排在时间轴上。同时,可对等待队列进行检测,检测等待队列中带有时间标签的读写请求,当时间到达某一读写请求的时间标签,该请求即可从等待队列中取出进行后续操作,否则,在队列中排队等待。如此,便可对接收到的读写请求在处理时间上进行控制,以控制卷带宽,进一步提升业务稳定性。
本发明的另一核心是提供一种请求处理装置、设备、可读存储介质,具有上述技术效果。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
请参考图1,图1为本发明实施例中一种请求处理方法的流程图,该方法包括以下步骤:
S101、接收目标请求,并确定目标请求指定读/写的数据大小。
接收目标请求,其中目标请求可以为用户发送的读数据的请求,也可为写数据的请求。接收到目标请求之后,可以确定出目标请求指定读/写的数据大小。具体的,如果为写数据的请求,则确定出指定写入存储设备的数据的大小;如果为读数据的请求,则确定出从存储设备中指定读取的数据的大小。数据大小的可是要字节进行表示。
S102、将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签。
在本发明实施例中,可以预先设置时间标签计算模型,为了控制卷带宽,保障业务性能的稳定性,可将卷带宽上限值设置在时间标签计算模型中。也就是说,利用时间标签计算模型计算出的目标时间标签,为适应卷带宽上限值的时间标签。例如,假定目标请求指定读/写的数据大小为a,若卷带宽上限值为b,计算出的目标时间标签为c,c的具体数值则与a和b相关,且在b较大时,c在时间轴上则越靠前(即时间上越早)。
具体的,在将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签之前,可获取带宽上限值,并将带宽上限值设置在预设的时间标签计算模型中。优选地,为了适配实时变化的业务需求,还可接收带宽上限值调整请求,并将时间标签计算模型中带宽上限值调整为带宽上限值调整请求指定的目标带宽上限值。如此,便可在业务需求发生变化之后,将时间标签计算模型中的带宽上限值进行适应性调整。
具体的,可将数据大小输入至Ttag(i)=Ttag(i-1)+F(i)/V中进行计算,获得目标时间标签Ttag(i);其中,F(i)为数据大小,V为卷带宽上限值,Ttag(i-1)为当前最新等待请求的时间标签。其中,当前最新等待请求即上一个设置了时间标签的请求;卷带宽上限值即指卷在单位时间内可以传输的数据总量的上限值,通常带宽上限值可设置在(100KBps-10GBps)范围内,具体的数值大小可根据业务需求进行设置。目标时间标签和最新等待请求的时间标签均可具体为一个时间点。后续接收的请求的时间标签总是晚于上一个接收的请求,且,两个时间标签之间的间隔大小,在卷带宽上限值不变的情况下,则取决于后者指定读/写的数据大小的,即后者的指定读/写的数据大小的值越大,则两个时间标签的之间的时间间隔越大。
另外,在将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签,若无最新等待请求,则将当前时间作为目标时间标签。即,若接收到的目标请求为有记录以来第一个请求,此时还出现设置有时间标签的等待请求,则可直接将当前时间作为时间标签。
S103、为目标请求设置目标时间标签获得目标等待请求,并将目标等待请求放入等待队列中。
得到目标时间标签之后,为目标请求设置目标时间标签,即将目标时间标签作为目标请求的时间标签。为便于后续说明和描述,在本文中将设置了目标时间标签的目标请求称之为目标等待请求,即目标等待请求与目标请求的区别仅在于目标等待请求中具有目标时间标签,而目标请求中未设置目标时间标签。得到目标等待请求之后,可将目标等待请求放入等待队列中。
由于等待队列可实现阻塞的唤醒,因而将目标等待请求放入等待队列进行阻塞之后,和满足第一唤醒条件之后,可完成对目标等待请求的后续处理操作。如此,便可对接收到的请求进行阻塞,并在适宜的时机进行处理。将目标等待请求放入等待队列之后,可以按照放入等待队列的先后顺序对等待队列中的等待请求进行处理。
S104、在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。
在判断是否对目标等待请求放行时,根据当前时间与目标时间标签的关系进行判断。可将当前时间到达或超过目标时间标签作为唤醒条件或称放行条件,即在在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。
具体的,可执行以下步骤对目标等待请求进行判断,以控制卷带宽:
步骤一、在目标等待请求位于等待队列的队首时,读取目标时间标签;
步骤二、判断当前时间是否到达或超过目标时间标签;
步骤三、如果是,则对目标等待请求放行并提供目标等待请求对应的数据服务。
为便于描述,下面将上述三个步骤结合起来进行说明。
当目标等待请求位于等待队列的队首时,可读取目标等待请求的目标时间标签,并判断当前时间是否到达或超过目标时间标签。例如,若当前时间为2018-9-18-14:10:28,而目标时间标签的时间为2018-9-18-14:11:00,由于2018-9-18-14:11:00晚于2018-9-18-14:10:28,因此,判定结果为否,即未超过,此时可继续等待;若当前时间为2018-9-18-14:10:28,而目标时间标签的时间为2018-9-18-14:9:00,由于2018-9-18-14:9:00早于2018-9-18-14:10:28,因此,判定结果为是,即已超过,则说明当前时刻对目标等待请求进行处理,提供目标等待请求对应的数据服务,不会影响卷带宽,此时可对目标等待请求放行。如果超过了,则可对目标等待请求放行,并通过目标等待请求对应的数据服务。具体的,若目标等待请求为读数据的请求,则向发送目标请求的用户发送相关数据;若目标等待请求为写数据的请求,则将相关数据写入存储设备中。
优选地,在完成对目标等待请求的后续处理之后,即提供了目标等待请求对应的数据服务之后,可将目标等待请求从等待队列中删除,以便对等待队列中的下一个等待请求进行处理。如此,在对等待队列中的等待请求进行处理时,仅需读取队首(即等待队列中的第一个等待请求)的等待请求即可,而无需进行复杂的判断。
应用本发明实施例所提供的方法,接收目标请求,并确定目标请求指定读/写的数据大小;将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;为目标请求设置目标时间标签获得目标等待请求,并将目标等待请求放入等待队列中;在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。
在接收到目标请求之后,首先确定该目标请求指定读或指定写的数据大小(如5M)。然后,将该数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,可获得目标时间标签。为目标请求设置目标时间标签,得到目标等待请求,并将目标等待请求放入等待队列中,仅在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。也就是说,通过对每个读写请求根据其指定要读/写的数据大小及卷带宽上限值设置时间标签,并采用等待队列的方式,将读写请求按计划排在时间轴上,当时间到达某一读写请求的时间标签,该请求即可进行后续操作。如此,便可以根据时间标签,实现对带宽的控制。按照时间,有计划控制读写请求,可准确、稳定地控制带宽,进一步可提升业务稳定性。
实施例二:
为便于本领域技术人员更好地理解本发明实施例所提供的技术方案,下面以在分布式存储集群中,采用本发明实施例所提供的技术方案实现卷带宽控制进行详细说明。
请参考图2,图2为本发明实施例中一种请求处理方法的具体实施流程图。
在实际应用中,根据本发明实施例所提供的请求处理方法,设置一个时间标签带宽控制单元和Flush模块。其中,时间带宽控制单元可对每个读写请求按照先后顺序根据其数据大小及带宽预期值设置时间标签并放入一个等待队列中,即每个读写请求都根据其数据大小及带宽预期值按计划排在时间轴上。Flush模块可检测等待队列中带有时间标签的读写请求,当时间到达某一读写请求的时间标签,该请求即可从等待队列中取出进行后续操作,否则,在队列中排队等待。具体的,时间标签带宽控制单元及Flush模块对卷带宽的控制步骤如下:
其中,时间标签带宽控制单元,可用于执行以下步骤的操作:
S11、向时间标签带宽控制单元设置带宽预期值V;
其中,带宽预期值一般在(100KBps-10GBps)范围内,其具体值是根据业务应用需求,后端存储卷对其提供的预期带宽性能。例如,某一特定业务应用根据其关键性,只需为其分配100M的带宽,则可将V设置为100M,即控制其最大带宽为100M。如此,即使在该应用存储访问需求很大时,后端存储也会控制其访问带宽在100M附近,不会对存储造成冲击,也不会对其他关键业务应用产生冲击。
S12、对第一个到达时间标签带宽控制单元的读写请求Req0设置时间标签,时间标签值为当前时间T;
S13、对后续到达带宽控制单元的第i个读写请求Reqi设置时间标签,无该请求的数据大小记为F(i),第i-1个请求的时间标签值记为Ttag(i-1),则时间标签值为:
Ttag(i-1)+F(i)/V(i=1,2,3,…)
S14、被设置时间标签的读写请求放入等待队列(图2所示的Qwait)。
其中,Flush模块,可用于执行以下步骤的操作:
S21、对等待队列进行检测,当检测等待队列中存在等待请求时,则对等待队列中的第一个请求(图2所示的FirstReq)进行判断,确定是否放行;
S22、若当前时间已经到达或超过FirstReq的标签时间,则对该请求放行,并完成后续操作(如读取数据,或写入数据),并从等待队列中删除该请求记录;
S23、若当前时间还没有到达FirstReq的标签时间,则继续对等待队列进行检测。
通过时间标签带宽控制单元及Flush模块对卷带宽分别执行对应步骤,即可实现对卷的读写操作带宽控制在预期值V。具体的,由于对每一个读写请求根据该请求数据大小及带宽预期值严格按照时间计划执行,当读写压力较大时,可以保证实际带宽符合预期值,即不超过卷带宽上限值;当读写压力有波动时,可以保证实际带宽不会超过预期值。与基于令牌桶算法控制带宽的方法相比,可以得到更加稳定、准确的带宽,从而保障业务的平稳性。
实施例三:
相应于上面的方法实施例,本发明实施例还提供了一种请求处理装置,下文描述的请求处理装置与上文描述的请求处理方法可相互对应参照。
参见图3所示,该装置包括以下模块:
目标请求接收模块101,用于接收目标请求,并确定目标请求指定读/写的数据大小;
目标时间标签获得模块102,用于将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;
目标等待请求获得模块103,用于为目标请求设置目标时间标签获得目标等待请求,并将目标等待请求放入等待队列中;
目标等待请求处理模块104,用于在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。
应用本发明实施例所提供的装置,接收目标请求,并确定目标请求指定读/写的数据大小;将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;为目标请求设置目标时间标签获得目标等待请求,并将目标等待请求放入等待队列中;在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。
在接收到目标请求之后,首先确定该目标请求指定读或指定写的数据大小(如5M)。然后,将该数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,可获得目标时间标签。为目标请求设置目标时间标签,得到目标等待请求,并将目标等待请求放入等待队列中,仅在当前时间到达或超过目标时间标签时,对目标等待请求放行并提供目标等待请求对应的数据服务。也就是说,通过对每个读写请求根据其指定要读/写的数据大小及卷带宽上限值设置时间标签,并采用等待队列的方式,将读写请求按计划排在时间轴上,当时间到达某一读写请求的时间标签,该请求即可进行后续操作。如此,便可以根据时间标签,实现对带宽的控制。按照时间,有计划控制读写请求,可准确、稳定地控制带宽,进一步可提升业务稳定性。
在本发明的一种具体实施方式中,目标时间标签获得模块102,具体用于将数据大小输入至Ttag(i)=Ttag(i-1)+F(i)/V中进行计算,获得目标时间标签Ttag(i);其中,F(i)为数据大小,V为卷带宽上限值,Ttag(i-1)为当前最新等待请求的时间标签。
在本发明的一种具体实施方式中,目标时间标签获得模块102,具体用于若无最新等待请求,则将当前时间作为目标时间标签。
在本发明的一种具体实施方式中,目标等待请求处理模块104,具体用于在目标等待请求位于等待队列的队首时,读取目标时间标签;判断当前时间是否到达或超过目标时间标签;如果是,则对目标等待请求放行并提供目标等待请求对应的数据服务。
在本发明的一种具体实施方式中,还包括:等待队列整理模块,用于在对目标等待请求放行并提供目标等待请求对应的数据服务之后,将目标等待请求从等待队列中删除。
在本发明的一种具体实施方式中,还包括:
时间标签计算模型设置模块,用于在将数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签之前,获取带宽上限值,并将带宽上限值设置在预设的时间标签计算模型中。
在本发明的一种具体实施方式中,时间标签计算模型设置模块,具体用于接收带宽上限值调整请求,并将时间标签计算模型中带宽上限值调整为带宽上限值调整请求指定的目标带宽上限值。
实施例四:
相应于上面的方法实施例,本发明实施例还提供了一种请求处理设备,下文描述的一种请求处理设备与上文描述的一种请求处理方法可相互对应参照。
参见图4所示,该请求处理设备包括:
存储器D1,用于存储计算机程序;
处理器D2,用于执行计算机程序时实现上述方法实施例的请求处理方法的步骤。
请参考图5,图5为本实施例提供的一种请求处理设备的具体结构示意图,该请求处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,一个或一个以上存储应用程序342或数据344的存储介质330(例如一个或一个以上海量存储设备)。其中,存储器332和存储介质330可以是短暂存储或持久存储。存储在存储介质330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储介质330通信,在请求处理设备301上执行存储介质330中的一系列指令操作。
请求处理设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作***341。例如,Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
上面所描述的请求处理方法中的步骤可以由请求处理设备的结构实现。
实施例五:
相应于上面的方法实施例,本发明实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种请求处理方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的请求处理方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

Claims (10)

1.一种请求处理方法,其特征在于,包括:
接收目标请求,并确定所述目标请求指定读/写的数据大小;
将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;
为所述目标请求设置所述目标时间标签获得目标等待请求,并将所述目标等待请求放入等待队列中;
在当前时间到达或超过所述目标时间标签时,对所述目标等待请求放行并提供所述目标等待请求对应的数据服务。
2.根据权利要求1所述的请求处理方法,其特征在于,将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签,包括:
将数据大小输入至Ttag(i)=Ttag(i-1)+F(i)/V中进行计算,获得目标时间标签Ttag(i);其中,F(i)为所述数据大小,V为卷带宽上限值,Ttag(i-1)为当前最新等待请求的时间标签。
3.根据权利要求2所述的请求处理方法,其特征在于,将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签,包括:
若无最新等待请求,则将当前时间作为所述目标时间标签。
4.根据权利要求1所述的请求处理方法,其特征在于,所述在当前时间到达或超过所述目标时间标签时,对所述目标等待请求放行并提供所述目标等待请求对应的数据服务,包括:
在所述目标等待请求位于所述等待队列的队首时,读取所述目标时间标签;
判断当前时间是否到达或超过所述目标时间标签;
如果是,则对所述目标等待请求放行并提供所述目标等待请求对应的数据服务。
5.根据权利要求1所述的请求处理方法,其特征在于,在对所述目标等待请求放行并提供所述目标等待请求对应的数据服务之后,还包括:
将所述目标等待请求从所述等待队列中删除。
6.根据权利要求1至5任一项所述的请求处理方法,其特征在于,在将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签之前,还包括:
获取带宽上限值,并将所述带宽上限值设置在预设的时间标签计算模型中。
7.根据权利要求6所述的请求处理方法,其特征在于,还包括:
接收带宽上限值调整请求,并将所述时间标签计算模型中所述带宽上限值调整为所述带宽上限值调整请求指定的目标带宽上限值。
8.一种请求处理装置,其特征在于,包括:
目标请求接收模块,用于接收目标请求,并确定所述目标请求指定读/写的数据大小;
目标时间标签获得模块,用于将所述数据大小输入至设有卷带宽上限值的时间标签计算模型中进行计算,获得目标时间标签;
目标等待请求获得模块,用于为所述目标请求设置所述目标时间标签获得目标等待请求,并将所述目标等待请求放入等待队列中;
目标等待请求处理模块,用于在当前时间到达或超过所述目标时间标签时,对所述目标等待请求放行并提供所述目标等待请求对应的数据服务。
9.一种请求处理设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述请求处理方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述请求处理方法的步骤。
CN201811093852.4A 2018-09-19 2018-09-19 一种请求处理方法、装置、设备及可读存储介质 Active CN109246033B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811093852.4A CN109246033B (zh) 2018-09-19 2018-09-19 一种请求处理方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811093852.4A CN109246033B (zh) 2018-09-19 2018-09-19 一种请求处理方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN109246033A true CN109246033A (zh) 2019-01-18
CN109246033B CN109246033B (zh) 2022-02-18

Family

ID=65059222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811093852.4A Active CN109246033B (zh) 2018-09-19 2018-09-19 一种请求处理方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN109246033B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111506403A (zh) * 2020-04-03 2020-08-07 北京声智科技有限公司 一种多服务处理方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526925A (zh) * 2009-04-15 2009-09-09 成都市华为赛门铁克科技有限公司 一种缓存数据的处理方法及数据存储***
CN101605100A (zh) * 2009-07-15 2009-12-16 华为技术有限公司 队列存储空间的管理方法和设备
US7647420B2 (en) * 2005-03-17 2010-01-12 International Business Machines Corporation Apparatus and method for controlling storage device
CN102104614A (zh) * 2009-12-22 2011-06-22 成都市华为赛门铁克科技有限公司 一种数据访问方法及装置
US20140122919A1 (en) * 2012-10-30 2014-05-01 Hitachi, Ltd. Storage system and data processing method
CN107465743A (zh) * 2017-08-03 2017-12-12 郑州云海信息技术有限公司 一种处理请求的方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7647420B2 (en) * 2005-03-17 2010-01-12 International Business Machines Corporation Apparatus and method for controlling storage device
CN101526925A (zh) * 2009-04-15 2009-09-09 成都市华为赛门铁克科技有限公司 一种缓存数据的处理方法及数据存储***
CN101605100A (zh) * 2009-07-15 2009-12-16 华为技术有限公司 队列存储空间的管理方法和设备
CN102104614A (zh) * 2009-12-22 2011-06-22 成都市华为赛门铁克科技有限公司 一种数据访问方法及装置
US20140122919A1 (en) * 2012-10-30 2014-05-01 Hitachi, Ltd. Storage system and data processing method
CN107465743A (zh) * 2017-08-03 2017-12-12 郑州云海信息技术有限公司 一种处理请求的方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111506403A (zh) * 2020-04-03 2020-08-07 北京声智科技有限公司 一种多服务处理方法及装置

Also Published As

Publication number Publication date
CN109246033B (zh) 2022-02-18

Similar Documents

Publication Publication Date Title
US9178827B2 (en) Rate control by token buckets
US20190220201A1 (en) Methods, apparatuses, and computer program products for controlling write requests in storage system
US8812454B2 (en) Apparatus and method for managing storage of data blocks
KR102430209B1 (ko) 저장 장치 및 저장 장치에 포함된 컨트롤러들
JP5132812B2 (ja) 優先度を用いて入出力要求をキューに入れるか否かを決定するための方法、システム、および製造品(優先度を用いて、記憶装置に送出された入出力(i/o)要求をキューに入れるか否かを決定すること)
US8898674B2 (en) Memory databus utilization management system and computer program product
US8725873B1 (en) Multi-server round robin arbiter
CN103631624A (zh) 读写请求的处理方法和装置
CN101669096A (zh) 存储器访问控制装置
CN103888377A (zh) 报文缓存方法及装置
US11677769B2 (en) Counting SYN packets
US11979336B1 (en) Quota-based resource scheduling
CN115543761B (zh) 一种支持iops突发的方法、装置、电子设备及可读存储介质
JP2005115600A (ja) 情報処理装置及び方法
CN109246033A (zh) 一种请求处理方法、装置、设备及可读存储介质
US20180217875A1 (en) Data processing system and data processing method
US7890958B2 (en) Automatic adjustment of time a consumer waits to access data from queue during a waiting phase and transmission phase at the queue
US10936044B2 (en) Quality of service based memory throttling
US20200034188A1 (en) Automated predictions for not-yet-completed jobs
JP6848278B2 (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
CN109062518A (zh) 一种请求处理方法、装置、设备及可读存储介质
US11481341B2 (en) System and method for dynamically adjusting priority-based allocation of storage system resources
EP3166027B1 (en) Method and apparatus for determining hot page in database
KR102335798B1 (ko) 다수의 클라이언트 데이터를 처리하는 저장 장치 및 방법
CN111352868A (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