CN114116203B - 一种资源调用控制方法、资源调用控制装置及存储介质 - Google Patents
一种资源调用控制方法、资源调用控制装置及存储介质 Download PDFInfo
- Publication number
- CN114116203B CN114116203B CN202111276137.6A CN202111276137A CN114116203B CN 114116203 B CN114116203 B CN 114116203B CN 202111276137 A CN202111276137 A CN 202111276137A CN 114116203 B CN114116203 B CN 114116203B
- Authority
- CN
- China
- Prior art keywords
- read
- resource
- write task
- storage
- host
- 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
- 238000000034 method Methods 0.000 title claims abstract description 104
- 238000012545 processing Methods 0.000 claims abstract description 60
- 230000015654 memory Effects 0.000 claims description 55
- 230000002159 abnormal effect Effects 0.000 claims description 12
- 108010001267 Protein Subunits Proteins 0.000 claims 1
- 238000013468 resource allocation Methods 0.000 claims 1
- 230000000903 blocking effect Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种资源调用控制方法、资源调用控制装置及存储介质。资源调用控制方法,应用于存储设备,存储设备与至少一个主机连接,包括:响应接收到的主机的读写任务,调用第一存储资源处理读写任务。当第一存储资源耗尽且读写任务未处理完成时,调用第二存储资源继续处理读写任务。当第二存储资源耗尽且读写任务未处理完成时,调用栈空间分配的临时资源处理读写任务。通过本公开提供的方法,能够在为其分配的用于读写任务的资源耗尽且该读写任务未处理完成的情况下,调用其他类型的资源继续处理该读写任务,以保证该读写任务能够继续进行,进而保障主机读写任务的连续性,降低或者避免该读写任务未处理完成的可能。
Description
技术领域
本发明涉及计算机控制技术领域,具体涉及一种资源调用控制方法、资源调用控制装置及存储介质。
背景技术
随着数据产生和应用的规模不断扩大,存储阵列***需要处理主机读写任务的需求也日益增加。其中,存储阵列***是位于存储设备内部的***,存储设备的核心任务是处理主机读写业务。
相关技术中,存储设备接收到主机发送的资源调用请求后,向存储阵列***申请能够处理主机读写任务资源的内存资源。例如:能够处理输入/输出(Input/Output,I/O)资源的内存。但由于存储设备内的存储资源有限,在处理过程中,随着主机处理读写业务的数量不断增多,容易导致主机在处理读写业务时,可调用内存资源不足,进而导致主机读写业务中断的情况发生。
发明内容
因此,本发明要解决的技术问题在于克服现有技术中由于内存资源不足导致主机读写业务中断,影响业务连续性的缺陷,从而提供一种资源调用控制方法、资源调用控制装置及存储介质。
根据第一方面,本发明提供一种资源调用控制方法,应用于存储设备,所述存储设备与至少一个主机连接,所述方法包括:
响应接收到的主机的读写任务,调用第一存储资源处理所述读写任务,所述第一存储资源为总内存资源中分配的用于读写任务的资源;
当所述第一存储资源耗尽且所述读写任务未处理完成时,调用第二存储资源继续处理所述读写任务,所述第二存储资源为总内存资源中为所述主机预留的资源;
当所述第二存储资源耗尽且所述读写任务未处理完成时,调用栈空间分配的临时资源处理所述读写任务。
在该方式中,在处理主机发送的读写任务的过程中,在为其分配的用于读写任务的资源耗尽且该读写任务未处理完成的情况下,为保证该读写任务能够处理完成,能够调用其他类型的资源继续处理该读写任务,以保证该读写任务能够继续进行,进而保障主机读写任务的连续性,降低或者避免该读写任务未处理完成的可能。
结合第一方面,在第一方面的第一实施方式中,所述读写任务包括多个子任务,所述方法还包括:
当所述第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务。
在该方式中,可以采用动态调节的方式,在第一存储资源耗尽的情况下,为多个子任务分配第二存储资源或者栈空间内的临时资源,以使内存资源调用的方式更灵活,进而减少任务阻塞的情况发生,有利于降低主机读写业务发生中断可能。
结合第一方面和/或第一方面的第一实施方式,在第一方面第二实施方式中,在调用第二存储资源继续处理所述读写任务时,所述方法还包括:
向所述主机发送异常信息,用于告知所述读写任务处理失败。
在该方式中,通过发送异常信息,可以提示主机用于读写任务的资源已被耗尽,进而有助于促使主机能够根据接收到的异常信息自动减少或者停止发送读写任务,从而降低读写任务过多,无法及时处理的可能。
结合第一方面的第二实施方式,在第一方面第三实施方式中,所述方法还包括:
基于所述栈空间,向所述主机发送请求停止通知,用于通知所述主机暂停向所述存储设备发送读写任务请求。
在该方式中,通过栈空间发送请求停止通知,有助于主机明确当前已无多余的资源可继续处理其他读写请求,以使主机能够主动停止发送读写任务,进而减少读写任务的堆积数量,缓解存储设备的负载压力,从而降低由于主机读写任务中断而带来的损失。
结合第一方面和/或第一方面的第一实施方式,在第一方面第四实施方式中,所述第一存储资源的分配方法包括:
将所述用于读写任务的资源根据所述主机的CPU的核心数量进行划分,确定所述主机对应的所述第一存储资源。
在该方式中,为主机分配第一存储资源时,根据CPU的核心数量进行分配,有利于合理使用第一存储资源,以避免在处理读写任务时,第一存储资源浪费或者不足的情况发生,进而提高第一存储资源的利用率和复用率。
结合第一方面和/或第一方面的第一实施方式,在第一方面第五实施方式中,所述第二存储资源的分配方法,包括:
将所述预留的资源根据与所述存储设备连接的主机数量进行均分,确定各所述主机对应的第二存储资源。
在该方式中,根据主机数量划分第二存储资源,有助于快速分配预留资源,减少分配成本。
结合第一方面的第二实施方式,在第一方面第六实施方式中,所述处理结果包括所述读写任务处理错误状态码。
在该方式中,通过发送读写任务处理错误状态码,以告知主机当前执行的读写任务处理失败。
根据第二方面,本发明提供一种资源调用控制装置,应用于存储设备,所述存储设备与至少一个主机连接,所述装置包括:
第一调用单元,用于响应接收到的主机的读写任务,调用第一存储资源处理所述读写任务,所述第一存储资源为总内存资源中分配的用于读写任务的资源;
第二调用单元,用于当所述第一存储资源耗尽且所述读写任务未处理完成时,调用第二存储资源继续处理所述读写任务,所述第二存储资源为总内存资源中为所述主机预留的资源;
第三调用单元,用于当所述第二存储资源耗尽且所述读写任务未处理完成时,调用栈空间分配的临时资源处理所述读写任务。
结合第二方面,在第二方面的第一实施方式中,所述第三调用单元包括:
调用子单元,用于当所述第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务。
结合第二方面和/或第二方面的第一实施方式,在第二方面第二实施方式中,所述装置还包括:
发送单元,用于向所述主机发送异常信息,用于告知所述读写任务处理失败。
结合第二方面的第二实施方式,在第二方面第三实施方式中,所述装置还包括:
通知发送单元,用于基于所述栈空间,向所述主机发送请求停止通知,用于通知所述主机暂停向所述存储设备发送读写任务请求。
结合第二方面和/或第二方面的第一实施方式,在第二方面第四实施方式中,所述装置还包括:
第一划分单元,用于将所述用于读写任务的资源根据所述主机的CPU的核心数量进行划分,确定所述主机对应的所述第一存储资源。
结合第二方面和/或第二方面的第一实施方式,在第二方面第五实施方式中,所述装置还包括:
第二划分单元,用于将所述预留的资源根据与所述存储设备连接的主机数量进行均分,确定各所述主机对应的第二存储资源。
结合第二方面的第二实施方式,在第二方面第六实施方式中,所述处理结果包括所述读写任务处理错误状态码。
根据第三方面,本发明实施方式还提供一种计算机设备,包括存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行第一方面及其可选实施方式中任一项的资源调用控制方法。
根据第四方面,本发明实施方式还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行第一方面及其可选实施方式中任一项的资源调用控制方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例提出的一种资源调用控制方法的流程图。
图2是根据一示例性实施例提出的另一种资源调用控制方法的流程图。
图3是根据一示例性实施例提出的另一种资源调用控制方法的流程图。
图4是根据一示例性实施例提出的另一种资源调用控制方法的流程图。
图5是根据一示例性实施例提出的一种资源调用控制装置的结构框图。
图6是根据一示例性实施例提出的一种计算机设备的硬件结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
存储设备的核心任务是处理主机读写业务。当存储设备接收到主机发送的资源调用请求后,向存储阵列***申请能够处理主机读写任务资源的内存资源。例如:能够处理输入/输出(Input/Output,I/O)资源的内存。但由于存储设备内的存储资源有限,在处理过程中,随着主机处理读写业务的数量不断增多,容易导致主机在处理读写业务时,可调用内存资源不足,进而导致主机读写业务中断的情况发生。
为解决上述问题,本发明实施例中提供一种资源调用控制方法,用于计算机设备中,需要说明的是,其执行主体可以是资源调用控制装置,该装置可以通过软件、硬件或者软硬件结合的方式实现成为存储设备的部分或者全部,其中,该存储设备可以是终端或客户端或服务器,服务器可以是一台服务器,也可以为由多台服务器组成的服务器集群,本申请实施例中的终端可以是智能手机、个人电脑、平板电脑、可穿戴设备以及智能机器人等其他智能硬件设备。下述方法实施例中,均以执行主体是存储设备为例来进行说明。
本是实施例中的存储设备中,能够基于自身内部的存储资源处理与该存储设备连接的至少一个主机发送的读写任务。其中,主机是能够支持SCSI协议的主机,SCSI协议是一种数据传输协议。通过SCSI协议,使主机能够与存储设备建立连接,进而使主机和存储设备之间能够传送命令、状态和块数据。本发明提供的资源调用控制方法,在处理主机发送的读写任务的过程中,在为其分配的用于读写任务的资源耗尽且该读写任务未处理完成的情况下,为保证该读写任务能够处理完成,能够调用其他类型的资源继续处理该读写任务,以保证该读写任务能够继续进行,进而保障主机读写任务的连续性,降低或者避免该读写任务未处理完成的可能。
图1是根据一示例性实施例提出的一种资源调用控制方法的流程图。如图1所示,资源调用控制方法包括如下步骤S101至步骤S103。
在步骤S101中,响应接收到的主机的读写任务,调用第一存储资源处理读写任务。
在本发明实施例中,第一存储资源为总内存资源中分配的用于读写任务的资源。即,存储设备在接收到主机的读写任务后进行响应时,从总内存资源中调用第一存储资源,以便通过第一存储资源处理该读写任务。在一例中,第一存储资源可以理解为是通用内存资源。
在一实施例中,在划分第一存储资源时,可以将用于读写任务的资源根据主机的CPU的核心数量进行划分。主机的CPU核心数量越多,则该主机的计算处理能力越强,进而存储设备在处理该主机发送的读写任务时,需要被占用的第一存储资源越多。因此,为保证第一存储资源能够合理利用,避免在处理读写任务时,由于第一存储资源不合理,导致第一存储资源浪费或者不足的情况发生,则在第一存储资源在进行划分时,可以根据与该存储设备连接的主机的CPU的核心数量进行划分。
在另一实施例中,当主机的CPU的核心数量较少时,用于读写任务的资源可以为共享资源。即,存储设备在处理各主机的读写任务时,可以共用该用于读写任务的资源。当存储设备当前接收到读写任务后,根据读写任务的运行状态,实时从用于读写任务的资源中调用处理该读写任务的第一存储资源,进而有助于降低分配成本。
在步骤S102中,当第一存储资源耗尽且读写任务未处理完成时,调用第二存储资源继续处理读写任务。
在本发明实施例中,第二存储资源为总内存资源中为主机预留的资源。可以理解为第二存储资源是应急资源。第一存储资源耗尽,表征当前读写任务已将该主机可用的用于读写任务的资源全部占用。但在第一存储资源耗尽的情况下,该读写任务仍未处理完成时,则容易导致任务堵塞,后续读写任务无法进行响应。因此,为避免上述情况发生,则调用该主机对应的第二存储资源继续处理读写任务,以使该读写任务能够顺利完成,其占用的第一存储资源能够被释放、复用。
在一实施例中,各主机对应的第二存储资源的划分,可以将预留的资源根据与存储设备连接的主机数量进行均分得到。根据主机数量划分第二存储资源,有助于快速分配预留资源,减少分配成本。
在步骤S103中,当第二存储资源耗尽且读写任务未处理完成时,调用栈空间分配的临时资源处理读写任务。
在本发明实施例中,当第二存储资源被耗尽且读写任务未处理完成时,表征该读写任务过大,仍需调用资源继续处理,因此,可以通过调用栈空间内分配的临时资源来处理该读写任务。采用栈空间调用临时资源,有助于快速获取资源,进而提高处理效率,从而有助于避免由于内存资源耗尽导致主机读写业务中断的问题发生。
在一示例中,通过临时资源对该读写任务进行处理时,可以是将该读写任务所占用的存储资源全部释放,包括占用的第一存储资源和第二存储资源,进而停止该读写任务继续占用存储资源,缓解第一存储资源的占用压力,以使后续的读写任务能够调用第一存储资源进行处理,从而达到避免任务阻塞的情况发生的目的。
通过上述实施例,能够在用于读写任务的资源耗尽的情况下,为当前处理的读写任务调取其他资源,以保证该处理任务能够处理完成,进而释放掉所占用的第一存储资源,从而避免由于任务堵塞,导致主机读写业务中断的情况发生。
在一实施例中,为使资源调用的方式更灵活,本发明还提供另一种资源调用控制方法。
图2是根据一示例性实施例提出的另一种资源调用控制方法的流程图。如图2所示,资源调用控制方法包括如下步骤。
在步骤S201中,响应接收到的主机的读写任务,调用第一存储资源处理读写任务。
在步骤S202中,当第一存储资源耗尽且读写任务未处理完成时,调用第二存储资源继续处理读写任务。
在步骤S2031中,当第二存储资源耗尽且读写任务未处理完成时,调用栈空间分配的临时资源处理读写任务。
在步骤S2032中,当第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务。
在本发明实施例中,当主机发送读写任务时,该读写任务可能包括多个子任务。但在实际读写任务处理过程中,处理读写任务的过程属于异步事件。即,可以在处理当前子任务的过程中,仍可以为其他子任务分配资源,以使其他子资源能够进行处理。
当第二存储资源被当前子任务占用,且不能被其他子任务调用时,表征第一存储资源已被全部占用,且第二存储资源也无法在为其他子任务分配可处理该其他子任务的资源,进而为保证其他子任务能够继续处理,减少任务阻塞的情况发生,则从栈空间中调用分配的临时资源,并通过该临时资源继续处理其他子资源,以使资源调用的方式更灵活,进而减少任务阻塞的情况发生。
通过上述实施例,能够采用动态调节的方式,在第一存储资源耗尽的情况下,为多个子任务分配第二存储资源或者栈空间内的临时资源以使各子任务能够继续处理,进而有助于减少任务阻塞的情况发生,有利于降低主机读写业务发生中断可能。
图3是根据一示例性实施例提出的另一种资源调用控制方法的流程图。如图3所示,资源调用控制方法包括如下步骤。
在步骤S301中,响应接收到的主机的读写任务,调用第一存储资源处理读写任务。
在步骤S302中,当第一存储资源耗尽且读写任务未处理完成时,调用第二存储资源继续处理读写任务。
在步骤S303中,向主机发送异常信息,用于告知读写任务处理失败。
在本发明实施例中,异常信息是用于告知读写任务处理失败的信息,用于提示主机正在处理的读写任务已将为其调用的第一存储资源全部耗尽,用于读写任务的资源已无法在执行其他读写任务,在存储设备的任务列表中,该主机对应的后续读写任务暂不能继续处理。通过向主机发送异常信息,有助于促使主机能够根据接收到的异常信息自动减少或者停止发送读写任务,从而降低读写任务过多,无法及时处理的可能。
在一示例中,处理结果包括读写任务处理错误状态码,通过读写任务处理错误状态码,告知主机当前执行的读写任务处理失败。在一实施场景中,读写任务处理错误状态码可以为TASK FULL。
在步骤S3041中,当第二存储资源耗尽且读写任务未处理完成时,调用栈空间分配的临时资源处理读写任务。
在步骤S3042中,当第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务。
通过上述实施例,能够在第一存储资源耗尽的情况下,通过向主机发送异常信息的方式,告知读写任务处理失败,进而促使主机能够自动减少或者停止发送读写任务,从而降低读写任务过多,无法及时处理的可能。
图4是根据一示例性实施例提出的另一种资源调用控制方法的流程图。如图4所示,资源调用控制方法包括如下步骤。
在步骤S401中,响应接收到的主机的读写任务,调用第一存储资源处理读写任务。
在步骤S402中,当第一存储资源耗尽且读写任务未处理完成时,调用第二存储资源继续处理读写任务。
在步骤S403中,向主机发送异常信息,用于告知读写任务处理失败。
在步骤S4041中,当第二存储资源耗尽且读写任务未处理完成时,调用栈空间分配的临时资源处理读写任务。
在步骤S4042中,当第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务。
在步骤S405中,基于栈空间,向主机发送请求停止通知,用于通知主机暂停向存储设备发送读写任务请求。
在本发明实施例中,基于栈空间自身处理效率高的特点,采用栈空间分配的临时资源处理读写任务时,能够快速进行响应并处理。但由于栈空间自身存储空间有限,可调用的临时资源可能无法满足将读写任务处理完成的需求,因此,基于栈空间,向主机发送请求停止通知,通知主机暂停向存储设备发送读写任务请求,以使主机能够明确存储设备当前已无多余的资源处理其他读写任务,进而减少读写任务的堆积数量,缓解存储设备的负载压力,从而降低由于主机读写任务中断而带来的损失。在一例中,请求停止通知中,还可以包括通知主机待第一存储资源有空闲资源时,再继续处理读写任务,以使主机能够明确存储设备处理读写任务的时机。
在一实施例中,基于栈空间向主机发送请求停止通知时,可以是通过栈空间分配的临时资源将该请求停止通知设置到主机(发起端)与存储设备(目标端)之间的链路(Initiator-Target-Nodes,I-T-N)上,进而达到通知主机暂停向存储设备发送读写任务请求的目的。在一例中,请求停止通知可以是单位注意指令(unit attention)。
在一实施场景中,当存储设备接收到主机发送的读写任务后进行响应,调用第一存储资源(通用内存资源),进而通过第一存储资源处理该读写任务。当第一存储资源耗尽且该读写任务未处理完成时,则调用第二存储资源(预留内存资源)继续处理该读写任务,并同时向主机发送出TASK FULL,以告知当前执行的读写任务处理失败。当第二存储资源耗尽且该读写任务仍未处理完成时,则调用栈空间分配的临时资源继续处理。若该栈空间分配的临时资源耗尽该读写任务也未完成,则直接将该读写任务占用的所有资源全部释放,进而避免造成任务阻塞。并且,在调用临时资源时,基于临时资源将请求停止通知(unitattention)设置到I-T-N上,以通知主机暂停向存储设备发送读写任务请求,待通用内存资源有空闲存储资源时再继续处理读写任务。
通过上述实施场景,能够在处理读写任务时,采用通用处理资源,预留内存资源及栈空间的临时资源三阶段处理方法尽可能的将读写任务处理完成,进而保证主机读写业务的连续性,从而避免由于资源耗尽导致读写任务不能继续处理,使主机读写业务中断的情况发生。
应该理解的是,虽然图1-图4中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-图4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于相同发明构思,本发明还提供一种应用于存储设备的资源调用控制装置,其中,该存储设备与至少一个主机连接。
图5是根据一示例性实施例提出的一种资源调用控制装置的结构框图。如图5所示,资源调用控制装置包括第一调用单元501、第二调用单元502和第三调用单元503。
第一调用单元501,用于响应接收到的主机的读写任务,调用第一存储资源处理读写任务,第一存储资源为总内存资源中分配的用于读写任务的资源;
第二调用单元502,用于当第一存储资源耗尽且读写任务未处理完成时,调用第二存储资源继续处理读写任务,第二存储资源为总内存资源中为主机预留的资源;
第三调用单元503,用于当第二存储资源耗尽且读写任务未处理完成时,调用栈空间分配的临时资源处理读写任务。
在一实施例中,第三调用单元503包括:调用子单元,用于当第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务。
在另一实施例中,装置还包括:发送单元,用于向主机发送异常信息,用于告知读写任务处理失败。
在又一实施例中,装置还包括:通知发送单元,用于基于栈空间,向主机发送请求停止通知,用于通知主机暂停向存储设备发送读写任务请求。
在又一实施例中,装置还包括:第一划分单元,用于将用于读写任务的资源根据主机的CPU的核心数量进行划分,确定主机对应的第一存储资源。
在又一实施例中,装置还包括:第二划分单元,用于将预留的资源根据与存储设备连接的主机数量进行均分,确定各主机对应的第二存储资源。
在又一实施例中,处理结果包括读写任务处理错误状态码。
上述资源调用控制装置的具体限定以及有益效果可以参见上文中对于资源调用控制方法的限定,在此不再赘述。上述各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图6是根据一示例性实施例提出的一种计算机设备的硬件结构示意图。如图6所示,该设备包括一个或多个处理器610以及存储器620,存储器620包括持久内存、易失内存和硬盘,图6中以一个处理器610为例。该设备还可以包括:输入装置630和输出装置640。
处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接,图6中以通过总线连接为例。
处理器610可以为中央处理器(Central Processing Unit,CPU)。处理器610还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器620作为一种非暂态计算机可读存储介质,包括持久内存、易失内存和硬盘,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的业务管理方法对应的程序指令/模块。处理器610通过运行存储在存储器620中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述资源调用控制方法。
存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据、需要使用的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至数据处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置630可接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器620中,当被所述一个或者多个处理器610执行时,执行如图1-4所示的方法。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,具体可参见如图1-4所示实施例中的相关描述。
本发明实施例还提供了一种非暂态计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的认证方法。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (5)
1.一种资源调用控制方法,其特征在于,应用于存储设备,所述存储设备与至少一个主机连接,所述方法包括:
响应接收到的主机的读写任务,调用第一存储资源处理所述读写任务,所述第一存储资源为总内存资源中分配的用于读写任务的资源,所述读写任务包括多个子任务;
当所述第一存储资源耗尽且所述读写任务未处理完成时,调用第二存储资源继续处理所述读写任务,所述第二存储资源为总内存资源中为所述主机预留的资源;
向所述主机发送异常信息,用于告知所述读写任务处理失败;
当所述第二存储资源耗尽且所述读写任务未处理完成时,调用栈空间分配的临时资源处理所述读写任务;
当所述第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务;
基于所述栈空间,向所述主机发送请求停止通知,用于通知所述主机暂停向所述存储设备发送读写任务请求;
其中,所述第一存储资源的分配方法包括:将所述用于读写任务的资源根据所述主机的CPU的核心数量进行划分,确定所述主机对应的所述第一存储资源;
所述第二存储资源的分配方法,包括:将所述预留的资源根据与所述存储设备连接的主机数量进行均分,确定各所述主机对应的第二存储资源。
2.根据权利要求1所述的方法,其特征在于,处理结果包括所述读写任务处理错误状态码。
3.一种资源调用控制装置,其特征在于,应用于存储设备,所述存储设备与至少一个主机连接,所述装置包括:
第一调用单元,用于响应接收到的主机的读写任务,调用第一存储资源处理所述读写任务,所述第一存储资源为总内存资源中分配的用于读写任务的资源,所述读写任务包括多个子任务;
第二调用单元,用于当所述第一存储资源耗尽且所述读写任务未处理完成时,调用第二存储资源继续处理所述读写任务,所述第二存储资源为总内存资源中为所述主机预留的资源;
发送单元,用于向所述主机发送异常信息,用于告知所述读写任务处理失败;
第三调用单元,用于当所述第二存储资源耗尽且所述读写任务未处理完成时,调用栈空间分配的临时资源处理所述读写任务;
所述第三调用单元包括:调用子单元,用于当所述第二存储资源被当前子任务占用,且不能被其他子任务调用时,则调用栈空间分配的临时资源处理其他子任务;
通知发送单元,用于基于所述栈空间,向所述主机发送请求停止通知,用于通知所述主机暂停向所述存储设备发送读写任务请求;
第一划分单元,用于将所述用于读写任务的资源根据所述主机的CPU的核心数量进行划分,确定所述主机对应的所述第一存储资源;
第二划分单元,用于将所述预留的资源根据与所述存储设备连接的主机数量进行均分,确定各所述主机对应的第二存储资源。
4.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1-2中任一项所述的资源调用控制方法。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-2中任一项所述的资源调用控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111276137.6A CN114116203B (zh) | 2021-10-29 | 2021-10-29 | 一种资源调用控制方法、资源调用控制装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111276137.6A CN114116203B (zh) | 2021-10-29 | 2021-10-29 | 一种资源调用控制方法、资源调用控制装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114116203A CN114116203A (zh) | 2022-03-01 |
CN114116203B true CN114116203B (zh) | 2024-01-09 |
Family
ID=80379865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111276137.6A Active CN114116203B (zh) | 2021-10-29 | 2021-10-29 | 一种资源调用控制方法、资源调用控制装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114116203B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115658242B (zh) * | 2022-10-21 | 2024-04-26 | 芯华章科技股份有限公司 | 逻辑***设计的任务处理方法及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766153A (zh) * | 2017-10-17 | 2018-03-06 | 华为技术有限公司 | 一种内存管理方法及装置 |
CN109871266A (zh) * | 2018-12-15 | 2019-06-11 | 中国平安人寿保险股份有限公司 | 任务延时处理方法、装置、计算机装置及存储介质 |
-
2021
- 2021-10-29 CN CN202111276137.6A patent/CN114116203B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107766153A (zh) * | 2017-10-17 | 2018-03-06 | 华为技术有限公司 | 一种内存管理方法及装置 |
CN109871266A (zh) * | 2018-12-15 | 2019-06-11 | 中国平安人寿保险股份有限公司 | 任务延时处理方法、装置、计算机装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114116203A (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10609159B2 (en) | Providing higher workload resiliency in clustered systems based on health heuristics | |
US9582305B2 (en) | Virtualization congestion control framework for modifying execution of applications on virtual machine based on mass congestion indicator in host computing system | |
US20160378570A1 (en) | Techniques for Offloading Computational Tasks between Nodes | |
WO2016165304A1 (zh) | 一种实例节点管理的方法及管理设备 | |
US10993127B2 (en) | Network slice instance management method, apparatus, and system | |
CN109726005B (zh) | 用于管理资源的方法、服务器***和计算机可读介质 | |
CN109766172B (zh) | 一种异步任务调度方法以及装置 | |
CN104426694B (zh) | 一种调整虚拟机资源的方法和装置 | |
US9037703B1 (en) | System and methods for managing system resources on distributed servers | |
US9635102B2 (en) | Broker module for managing and monitoring resources between internet service providers | |
CN113886089A (zh) | 一种任务处理方法、装置、***、设备及介质 | |
CN114116203B (zh) | 一种资源调用控制方法、资源调用控制装置及存储介质 | |
CN112905334A (zh) | 资源管理方法、装置、电子设备和存储介质 | |
US9092396B2 (en) | Standby system device, a control method, and a program thereof | |
EP3295309A1 (en) | Managing of storage resources | |
CN114553900B (zh) | 一种分布式块存储管理***、方法及电子设备 | |
WO2020252724A1 (zh) | 日志处理方法、设备及计算机可读存储介质 | |
US11709707B2 (en) | Low latency distributed counters for quotas | |
JP2013171355A (ja) | 計算機システム | |
CN112099728A (zh) | 一种执行写操作、读操作的方法及装置 | |
CN105208111A (zh) | 一种信息处理的方法及物理机 | |
US9836342B1 (en) | Application alerting system and method for a computing infrastructure | |
CN115378885A (zh) | 超融合架构下的虚拟机业务网络带宽管理方法及装置 | |
JP4877317B2 (ja) | 情報処理装置、割り込み制御方法 | |
CN116720179B (zh) | Api接口管理方法、终端设备及计算机可读存储介质 |
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 |