CN107977270A - 对等资源分配方法、对等资源分配系统及计算机装置 - Google Patents

对等资源分配方法、对等资源分配系统及计算机装置 Download PDF

Info

Publication number
CN107977270A
CN107977270A CN201711175734.3A CN201711175734A CN107977270A CN 107977270 A CN107977270 A CN 107977270A CN 201711175734 A CN201711175734 A CN 201711175734A CN 107977270 A CN107977270 A CN 107977270A
Authority
CN
China
Prior art keywords
node
resource
resource pool
resource request
peers
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
CN201711175734.3A
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.)
Uf Financial Information Technology Ltd By Share Ltd
Original Assignee
Uf Financial Information Technology Ltd By Share 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 Uf Financial Information Technology Ltd By Share Ltd filed Critical Uf Financial Information Technology Ltd By Share Ltd
Priority to CN201711175734.3A priority Critical patent/CN107977270A/zh
Publication of CN107977270A publication Critical patent/CN107977270A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出了一种对等资源分配方法、对等资源分配系统、计算机装置及计算机可读存储介质,其中对等资源分配方法包括:接收资源请求,并获取资源池共享的全局节点列表;遍历资源池列表内的节点;当遍历到资源池列表内的任一节点时,判断节点是否满足资源请求;当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;将资源分配节点上的资源分配至资源请求的请求方。本发明只需要获取资源池共享的全局节点列表,就可以在分布式环境中的多个对等节点间自动协商来决定资源的分配,能够有效的以请求匹配节点的方式解决因为集中式资源分配导致的业务整体瘫痪的问题。

Description

对等资源分配方法、对等资源分配系统及计算机装置
技术领域
本发明涉及通信技术领域,具体而言,涉及一种对等资源分配方法、对等资源分配系统、计算机装置及计算机可读存储介质。
背景技术
由于信息化技术的迅速发展,网络上的数据逐渐复杂庞大,传统的并行技术已经不能满足人类日益增长的办公和科研发展的需要。云计算作为一种新型的并行计算技术应运而生,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务。云计算的资源是动态易扩展且虚拟化的,通过互联网提供的云计算是基于互联网的超级计算模式,通过架构一个分布的、可全球访问的资源结构,使数据中心在类似互联网的环境下运行计算,即把存储于个人电脑、移动电话和其他设备上的大量信息和处理器资源集中在一起协同工作。云计算主要包括三种层次的服务:基础设施即服务(IaaS,Infrastructure-as-a-Service)、平台即服务(PaaS,Platform-as-a-Service)和软件即服务(SaaS,Software-as-a-Service)。虚拟化作为云计算的基石,也是炙手可热的研究领域,虚拟化的浪潮正在席卷服务器、存储、网络、PC机等各个领域,虚拟化最突出的优势就是节省资金、整合服务器以及最大化的资源利用率。
在任何共享的计算机系统中,资源分配都是一个关键的构建模块,已经提出的最通用的分配策略是max-min fairness(最大最小公平算法),这种策略会最大化系统中一个用户收到的最小分配,而加权max-min fairness的优势在于它的一般性和提供性能隔离的能力,比如加权max-min fairness模型可以支撑许多其他资源分配策略,包括优先级、界限、分配等。鉴于这些特征,在单资源类型的环境下,一般使用不同精确度的加权或非加权max-min fairness算法,而在多资源类型的环境下,当用户有异质资源请求时,典型的资源分配做法是使用单资源类型抽象,比如hadoop(海杜普)和Dryad(微软并行软件平台)的公平调度器,它们通过使用集群计算框架,在资源分配时使用插槽,而插槽就是对节点资源按照固定大小进行划分而产生的分区。但是,集群中不同的作业队CPU、内存和IO资源有着不同的需求,所以在多资源类型的环境下,主流算法如DRF(dominant resource fairness,主导份额资源公平算法),DRF试图最大化所有用户中最小的主导份额的资源,具体地,DRF在多环境下用户的资源分配由用户的主导份额的资源决定,而主导份额的资源是在所有已经分配给用户的多种资源中占据最大份额的一种资源。
现今,虽然涌现出了许多资源分配的算法,但是找出一种能够在分布式环境中的多个对等节点间决定资源分配,能够有效解决因为集中式资源分配导致的业务整体瘫痪的方法仍然是目前亟待解决的技术问题。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的一个方面在于提出了一种对等资源分配方法。
本发明的另一个方面在于提出了一种对等资源分配系统。
本发明的再一个方面在于提出了一种计算机装置。
本发明的又一个方面在于提出了一种计算机可读存储介质。
有鉴于此,根据本发明的一个方面,提出了一种对等资源分配方法,包括:接收资源请求,并获取资源池共享的全局节点列表;遍历资源池列表内的节点;当遍历到资源池列表内的任一节点时,判断节点是否满足资源请求;当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;将资源分配节点上的资源分配至资源请求的请求方。
本发明提供的对等资源分配方法,首先接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,找出其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上分配资源。本发明只需要通过获取资源池共享的全局节点列表,就可以在分布式环境中的多个对等节点间自动协商来决定资源的分配,能够有效的以请求匹配对等节点的方式解决因为集中式资源分配导致的业务整体瘫痪的问题,另外,通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
根据本发明的上述对等资源分配方法,还可以具有以下技术特征:
在上述技术方案中,优选地,当遍历到资源池列表内任一节点时,判断节点是否满足资源请求的步骤,具体包括:当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求;其中,比较器支持自定义算法。
在该技术方案中,当遍历到资源池列表内任一节点时,即资源池内的任一节点被访问时,判断该节点是否满足资源请求,其中,判断任一节点是否满足资源请求是通过比较器进行判断的,比较器相对灵活,能够支持各种自定义算法,即针对资源池内的不同节点可以采用不同的资源匹配算法对是否满足资源请求进行判断,可以采用单资源匹配算法,也可以采用多资源匹配算法。例如,可以采用单资源匹配算法中的max-min fairness算法和加权max-min fairness算法,也可以采用多资源匹配算法中hadoop算法和Dryad算法。本发明的比较器可以实现对不同类型的节点进行资源请求的判断,提高了判断结果的准确性和可靠性。
在上述任一技术方案中,优选地,在当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求之后,还包括:如果节点不满足资源请求,则继续遍历资源池列表内的其它节点。
在该技术方案中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点不满足资源请求时,则继续遍历资源池内的其它节点。本发明通过对资源池内的节点进行遍历以及对遍历到的节点进行是否满足资源请求的判断能够有效的找到满足资源请求的节点,为请求方能够获得资源提供了保障。
在上述任一技术方案中,优选地,在当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求之后,还包括:预设变量N;如果节点满足资源请求,则N=N+1;判断N是否小于容忍上限;如果N小于容忍上限,则继续遍历资源池列表内的其它节点;其中,N的初始值为0。
在该技术方案中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点满足资源请求时,预设变量N,并且将N值加1作为新的N值。进一步地,每当判断出资源池内的任一节点满足资源请求时,就将N值加1,并将每次更新后的N值与容忍上限进行比较,当更新后的N值小于容忍上限时,则继续遍历资源池列表内的其它节点,直到更新后的N值等于容忍上限时,停止对资源池列表内的节点进行访问。本发明通过设置容忍上限可以限定找到的满足资源请求的节点的具体数量,避免访问资源池内所有的节点,能够快速的找到相对适合进行资源匹配的节点,提升了工作效率,而且能够为资源分配结束后有效的扩容提供充足的保障。
在上述任一技术方案中,优选地,在极端情况下,如果在资源池内不存在满足资源请求的节点或遍历资源池内所有节点后的N值仍达不到容忍上限时,则报错。
在上述任一技术方案中,优选地,如果N等于容忍上限,则判断出满足资源请求的节点的数量达到容忍上限。
在该技术方案中,如果N值达到容忍上限,即满足资源请求的节点的数量达到了容忍上限,此时停止对资源池列表内的节点进行访问,进一步地将所有满足资源请求的节点进行比较,找出最大的匹配资源节点,并在该节点上分配资源。本发明通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
在上述任一技术方案中,优选地,根据资源池列表内节点的数量预设容忍上限。
在该技术方案中,因为不同的资源池内的节点数量会有所不同,所以针对不同的资源池所设置的容忍上限应该是不同的,根据以往经验可以根据整个资源池内节点的数量的百分比作为预设的容忍上限,以保障对不同的资源池进行资源请求时,能够更准确、迅速的为资源请求方进行资源的分配,提高工作效率。
根据本发明的另一个方面,提出了一种对等资源分配系统,包括:接收单元,用于接收资源请求,并获取资源池共享的全局节点列表;第一遍历单元,用于遍历资源池列表内的节点;第一判断单元,用于当遍历到资源池列表内任一节点时,判断节点是否满足资源请求;选取单元,用于当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;分配单元,用于将资源分配节点上的资源分配至资源请求的请求方。
本发明提供的对等资源分配系统,首先通过接收单元接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表通过第一遍历单元遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,通过第一判断单元判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,通过选取单元选取其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上通过分配单元分配资源。本发明只需要通过获取资源池共享的全局节点列表,就可以在分布式环境中的多个对等节点间自动协商来决定资源的分配,能够有效的以请求匹配对等节点的方式解决因为集中式资源分配导致的业务整体瘫痪的问题,另外,通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
根据本发明的上述对等资源分配系统,还可以具有以下技术特征:
在上述技术方案中,优选地,第一判断单元,具体用于:当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求;其中,比较器支持自定义算法。
在该技术方案中,当遍历到资源池列表内任一节点时,即资源池内的任一节点被访问时,判断该节点是否满足资源请求,其中,判断任一节点是否满足资源请求是通过比较器进行判断的,比较器相对灵活,能够支持各种自定义算法,即针对资源池内的不同节点可以采用不同的资源匹配算法对是否满足资源请求进行判断,可以采用单资源匹配算法,也可以采用多资源匹配算法。例如,可以采用单资源匹配算法中的max-min fairness算法和加权max-min fairness算法,也可以采用多资源匹配算法中hadoop算法和Dryad算法。本发明的比较器可以实现对不同类型的节点进行资源请求的判断,提高了判断结果的准确性和可靠性。
在上述任一技术方案中,优选地,第一判断单元还包括:第二遍历单元,用于如果节点不满足资源请求,则继续遍历资源池列表内的其它节点。
在该技术方案中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点不满足资源请求时,则通过第二遍历单元继续遍历资源池内的其它节点。本发明通过对资源池内的节点进行遍历以及对遍历到的节点进行是否满足资源请求的判断能够有效的找到满足资源请求的节点,为请求方能够获得资源提供了保障。
在上述任一技术方案中,优选地,第一判断单元还包括:第一预设单元,用于预设变量N;如果节点满足资源请求,则N=N+1;第二判断单元,用于判断N是否小于容忍上限;第三遍历单元,用于如果N小于容忍上限,则继续遍历资源池列表内的其它节点;其中,N的初始值为0。
在该技术方案中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点满足资源请求时,通过第一预设单元预设变量N,并且将N值加1作为新的N值。进一步地,每当判断出资源池内的任一节点满足资源请求时,就将N值加1,并将每次更新后的N值与容忍上限进行比较,当更新后的N值小于容忍上限时,则通过第三遍历单元继续遍历资源池列表内的其它节点,直到更新后的N值等于容忍上限时,停止对资源池列表内的节点进行访问。本发明通过设置容忍上限可以限定找到的满足资源请求的节点的具体数量,避免访问资源池内所有的节点,能够快速的找到相对适合进行资源匹配的节点,提升了工作效率,而且能够为资源分配结束后有效的扩容提供充足的保障。
在上述任一技术方案中,优选地,在极端情况下,如果在资源池内不存在满足资源请求的节点或遍历资源池内所有节点后的N值仍达不到容忍上限时,则报错。
在上述任一技术方案中,优选地,第二判断单元还用于:如果N等于容忍上限,则判断出满足资源请求的节点的数量达到容忍上限。
在该技术方案中,如果N值达到容忍上限,即满足资源请求的节点的数量达到了容忍上限,此时停止对资源池列表内的节点进行访问,进一步地将所有满足资源请求的节点进行比较,找出最大的匹配资源节点,并在该节点上分配资源。本发明通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
在上述任一技术方案中,优选地,第二预设单元,用于根据资源池列表内节点的数量预设容忍上限。
在该技术方案中,因为不同的资源池内的节点数量会有所不同,所以针对不同的资源池所设置的容忍上限应该是不同的,根据以往经验可以根据整个资源池内节点的数量的百分比作为预设的容忍上限,以保障对不同的资源池进行资源请求时,能够更准确、迅速的为资源请求方进行资源的分配,提高工作效率。
根据本发明的再一个方面,提出了一种计算机装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上述任一项的对等资源分配方法的步骤。
本发明提供的计算机装置,处理器执行计算机程序时实现接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,找出其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上分配资源。
根据本发明的又一个方面,提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项的对等资源分配方法的步骤。
本发明提供的计算机可读存储介质,计算机程序被处理器执行时实现接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,找出其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上分配资源。
本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了本发明的一个实施例的对等资源分配方法的流程示意图;
图2示出了本发明的另一个实施例的对等资源分配方法的流程示意图;
图3示出了本发明的再一个实施例的对等资源分配方法的流程示意图;
图4示出了本发明的又一个实施例的对等资源分配方法的流程示意图;
图5a示出了本发明的一个实施例的对等资源分配系统的示意框图;
图5b示出了本发明的另一个实施例的对等资源分配系统的示意框图;
图5c示出了本发明的再一个实施例的对等资源分配系统的示意框图;
图5d示出了本发明的又一个实施例的对等资源分配系统的示意框图;
图6示出了本发明的一个实施例的计算机装置的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不限于下面公开的具体实施例的限制。
本发明第一方面的实施例,提出了一种对等资源分配方法,图1示出了本发明的一个实施例的对等资源分配方法的流程示意图。其中,该方法包括:
步骤102,接收资源请求,并获取资源池共享的全局节点列表;
步骤104,遍历资源池列表内的节点;
步骤106,当遍历到资源池列表内的任一节点时,判断节点是否满足资源请求;
步骤108,当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
步骤110,将资源分配节点上的资源分配至资源请求的请求方。
本发明提供的对等资源分配方法,首先接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,找出其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上分配资源。本发明只需要通过获取资源池共享的全局节点列表,就可以在分布式环境中的多个对等节点间自动协商来决定资源的分配,能够有效的以请求匹配对等节点的方式解决因为集中式资源分配导致的业务整体瘫痪的问题,另外,通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
图2示出了本发明的另一个实施例的对等资源分配方法的流程示意图。其中,该方法包括:
步骤202,接收资源请求,并获取资源池共享的全局节点列表;
步骤204,遍历资源池列表内的节点;
步骤206,当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求;
步骤208,当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
步骤210,将资源分配节点上的资源分配至资源请求的请求方。
在该实施例中,当遍历到资源池列表内任一节点时,即资源池内的任一节点被访问时,判断该节点是否满足资源请求,其中,判断任一节点是否满足资源请求是通过比较器进行判断的,比较器相对灵活,能够支持各种自定义算法,即针对资源池内的不同节点可以采用不同的资源匹配算法对是否满足资源请求进行判断,可以采用单资源匹配算法,也可以采用多资源匹配算法。例如,可以采用单资源匹配算法中的max-min fairness算法和加权max-min fairness算法,也可以采用多资源匹配算法中hadoop算法和Dryad算法。本发明的比较器可以实现对不同类型的节点进行资源请求的判断,提高了判断结果的准确性和可靠性。
图3示出了本发明的再一个实施例的对等资源分配方法的流程示意图。其中,该方法包括:
步骤302,接收资源请求,并获取资源池共享的全局节点列表;
步骤304,遍历资源池列表内的节点;
步骤306,当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求;
步骤308,如果节点不满足资源请求,则继续遍历资源池列表内的其它节点,即返回步骤304;
步骤310,当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
步骤312,将资源分配节点上的资源分配至资源请求的请求方。
在该实施例中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点不满足资源请求时,则继续遍历资源池内的其它节点。本发明通过对资源池内的节点进行遍历以及对遍历到的节点进行是否满足资源请求的判断能够有效的找到满足资源请求的节点,为请求方能够获得资源提供了保障。
图4示出了本发明的又一个实施例的对等资源分配方法的流程示意图。其中,该方法包括:
步骤402,接收资源请求,并获取资源池共享的全局节点列表;
步骤404,遍历资源池列表内的节点;
步骤406,当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求;
步骤408,如果节点不满足资源请求,则继续遍历资源池列表内的其它节点,即返回步骤404;
步骤410,如果节点满足资源请求,则N=N+1,其中,N的初始值为0;
步骤412,判断N是否小于容忍上限;
步骤414,如果N小于容忍上限,则继续遍历资源池列表内的其它节点,即返回步骤404;
步骤416,当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
步骤418,将资源分配节点上的资源分配至资源请求的请求方。
在该实施例中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点满足资源请求时,预设变量N,并且将N值加1作为新的N值。进一步地,每当判断出资源池内的任一节点满足资源请求时,就将N值加1,并将每次更新后的N值与容忍上限进行比较,当更新后的N值小于容忍上限时,则继续遍历资源池列表内的其它节点,直到更新后的N值等于容忍上限时,停止对资源池列表内的节点进行访问。本发明通过设置容忍上限可以限定找到的满足资源请求的节点的具体数量,避免访问资源池内所有的节点,能够快速的找到相对适合进行资源匹配的节点,提升了工作效率,而且能够为资源分配结束后有效的扩容提供充足的保障。
在本发明的一个实施例中,优选地,在极端情况下,如果在资源池内不存在满足资源请求的节点或遍历资源池内所有节点后的N值仍达不到容忍上限时,则报错。
在本发明的一个实施例中,优选地,如果N等于容忍上限,则判断出满足资源请求的节点的数量达到容忍上限。
在该实施例中,如果N值达到容忍上限,即满足资源请求的节点的数量达到了容忍上限,此时停止对资源池列表内的节点进行访问,进一步地将所有满足资源请求的节点进行比较,找出最大的匹配资源节点,并在该节点上分配资源。本发明通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
在本发明的一个实施例中,优选地,根据资源池列表内节点的数量预设容忍上限。
在该实施例中,因为不同的资源池内的节点数量会有所不同,所以针对不同的资源池所设置的容忍上限应该是不同的,根据以往经验可以根据整个资源池内节点的数量的百分比作为预设的容忍上限,以保障对不同的资源池进行资源请求时,能够更准确、迅速的为资源请求方进行资源的分配,提高工作效率。
本发明第二方面的实施例,提出一种对等资源分配系统,图5a示出了本发明的一个实施例的对等资源分配系统500的示意框图。其中,该系统包括:
接收单元502,用于接收资源请求,并获取资源池共享的全局节点列表;
第一遍历单元504,用于遍历资源池列表内的节点;
第一判断单元506,用于当遍历到资源池列表内任一节点时,判断节点是否满足资源请求;
选取单元508,用于当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
分配单元510,用于将资源分配节点上的资源分配至资源请求的请求方。
本发明提供的对等资源分配系统500,首先通过接收单元502接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表通过第一遍历单元504遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,通过第一判断单元506判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,通过选取单元508选取其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上通过分配单元510分配资源。本发明只需要通过获取资源池共享的全局节点列表,就可以在分布式环境中的多个对等节点间自动协商来决定资源的分配,能够有效的以请求匹配对等节点的方式解决因为集中式资源分配导致的业务整体瘫痪的问题,另外,通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
在本发明的一个实施例中,优选地,第一判断单元506,具体用于:当遍历到资源池列表内任一节点时,通过比较器比较节点上的资源是否满足资源请求;其中,比较器支持自定义算法。
在该实施例中,当遍历到资源池列表内任一节点时,即资源池内的任一节点被访问时,判断该节点是否满足资源请求,其中,判断任一节点是否满足资源请求是通过比较器进行判断的,比较器相对灵活,能够支持各种自定义算法,即针对资源池内的不同节点可以采用不同的资源匹配算法对是否满足资源请求进行判断,可以采用单资源匹配算法,也可以采用多资源匹配算法。例如,可以采用单资源匹配算法中的max-min fairness算法和加权max-min fairness算法,也可以采用多资源匹配算法中hadoop算法和Dryad算法。本发明的比较器可以实现对不同类型的节点进行资源请求的判断,提高了判断结果的准确性和可靠性。
图5b示出了本发明的另一个实施例的对等资源分配系统的示意框图。其中,该系统包括:
接收单元502,用于接收资源请求,并获取资源池共享的全局节点列表;
第一遍历单元504,用于遍历资源池列表内的节点;
第一判断单元506,用于当遍历到资源池列表内任一节点时,判断节点是否满足资源请求;
第一判断单元506,包括:第二遍历单元512,用于如果节点不满足资源请求,则继续遍历资源池列表内的其它节点;
选取单元508,用于当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
分配单元510,用于将资源分配节点上的资源分配至资源请求的请求方。
在该实施例中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点不满足资源请求时,则通过第二遍历单元512继续遍历资源池内的其它节点。本发明通过对资源池内的节点进行遍历以及对遍历到的节点进行是否满足资源请求的判断能够有效的找到满足资源请求的节点,为请求方能够获得资源提供了保障。
图5c示出了本发明的再一个实施例的对等资源分配系统的示意框图。其中,该系统包括:
接收单元502,用于接收资源请求,并获取资源池共享的全局节点列表;
第一遍历单元504,用于遍历资源池列表内的节点;
第一判断单元506,用于当遍历到资源池列表内任一节点时,判断节点是否满足资源请求;
第一判断单元506,包括:第二遍历单元512,用于如果节点不满足资源请求,则继续遍历资源池列表内的其它节点;第一预设单元514,用于预设变量N,如果节点满足资源请求,则N=N+1,其中,N的初始值为0;第二判断单元516,用于判断N是否小于容忍上限;第三遍历单元518,用于如果N小于容忍上限,则继续遍历资源池列表内的其它节点;
选取单元508,用于当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
分配单元510,用于将资源分配节点上的资源分配至资源请求的请求方。
在该实施例中,根据获取到的资源池共享的全局节点列表遍历资源池列表内的节点,即按顺序依次对资源池内的节点进行访问,当判断出资源池内的任一节点满足资源请求时,通过第一预设单元514预设变量N,并且将N值加1作为新的N值。进一步地,每当判断出资源池内的任一节点满足资源请求时,就将N值加1,并将每次更新后的N值与容忍上限进行比较,当更新后的N值小于容忍上限时,则通过第三遍历单元518继续遍历资源池列表内的其它节点,直到更新后的N值等于容忍上限时,停止对资源池列表内的节点进行访问。本发明通过设置容忍上限可以限定找到的满足资源请求的节点的具体数量,避免访问资源池内所有的节点,能够快速的找到相对适合进行资源匹配的节点,提升了工作效率,而且能够为资源分配结束后有效的扩容提供充足的保障。
在本发明的一个实施例中,优选地,在极端情况下,如果在资源池内不存在满足资源请求的节点或遍历资源池内所有节点后的N值仍达不到容忍上限时,则报错。
在本发明的一个实施例中,优选地,第二判断单元516还用于:如果N等于容忍上限,则判断出满足资源请求的节点的数量达到容忍上限。
在该实施例中,如果N值达到容忍上限,即满足资源请求的节点的数量达到了容忍上限,此时停止对资源池列表内的节点进行访问,进一步地将所有满足资源请求的节点进行比较,找出最大的匹配资源节点,并在该节点上分配资源。本发明通过设置容忍上限的方式获取满足条件的最大值,是一种接近“贪婪”的方式,能够为资源分配结束后有效的扩容提供充足的保障。
图5d示出了本发明的又一个实施例的对等资源分配系统的示意框图。其中,该系统包括:
接收单元502,用于接收资源请求,并获取资源池共享的全局节点列表;
第二预设单元520,用于根据资源池列表内节点的数量预设容忍上限;
第一遍历单元504,用于遍历资源池列表内的节点;
第一判断单元506,用于当遍历到资源池列表内任一节点时,判断节点是否满足资源请求;
第一判断单元506,包括:第二遍历单元512,用于如果节点不满足资源请求,则继续遍历资源池列表内的其它节点;第一预设单元514,用于预设变量N,如果节点满足资源请求,则N=N+1,其中,N的初始值为0;第二判断单元516,用于判断N是否小于容忍上限;第三遍历单元518,用于如果N小于容忍上限,则继续遍历资源池列表内的其它节点;
选取单元508,用于当满足资源请求的节点的数量达到容忍上限时,在满足资源请求的节点中选取匹配度最高的节点作为资源请求的资源分配节点;
分配单元510,用于将资源分配节点上的资源分配至资源请求的请求方。
在该实施例中,因为不同的资源池内的节点数量会有所不同,所以针对不同的资源池所设置的容忍上限应该是不同的,根据以往经验可以根据整个资源池内节点的数量的百分比作为预设的容忍上限,以保障对不同的资源池进行资源请求时,能够更准确、迅速的为资源请求方进行资源的分配,提高工作效率。
本发明第三方面的实施例,提出一种计算机装置,图6示出了本发明的一个实施例的计算机装置600的示意框图。其中,该计算机装置600包括:
存储器602、处理器604及存储在存储器602上并可在处理器604上运行的计算机程序,处理器604执行计算机程序时实现如上述任一项的对等资源分配方法的步骤。
本发明提供的计算机装置600,处理器604执行计算机程序时实现接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,找出其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上分配资源。
本发明第四方面的实施例,提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器604执行时实现如上述任一项的对等资源分配方法的步骤。
本发明提供的计算机可读存储介质,计算机程序被处理器604执行时实现接收来自请求方的资源请求,并获取资源池内所有共享的全局对等节点列表,根据获取到的资源池的对等节点列表遍历资源池列表内的节点,具体地,当遍历到资源池列表内的任一节点时,即资源池内的任意一个节点被访问时,判断该节点是否满足资源请求,进一步地无论该节点是否满足资源请求都需要继续对资源池内的其它节点进行访问,直至当满足资源请求的节点的数量达到容忍上限时,停止对资源池内节点的遍历,并将所有满足资源请求的节点进行比较,找出其中最大的匹配资源节点,即匹配度最高的节点作为资源请求的资源分配节点,并在该节点上分配资源。
在本说明书的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种对等资源分配方法,其特征在于,包括:
接收资源请求,并获取资源池共享的全局节点列表;
遍历所述资源池列表内的节点;
当遍历到所述资源池列表内的任一节点时,判断所述节点是否满足所述资源请求;
当满足所述资源请求的所述节点的数量达到容忍上限时,在满足所述资源请求的所述节点中选取匹配度最高的节点作为所述资源请求的资源分配节点;
将所述资源分配节点上的资源分配至所述资源请求的请求方。
2.根据权利要求1所述的对等资源分配方法,其特征在于,所述当遍历到所述资源池列表内任一节点时,判断所述节点是否满足所述资源请求的步骤,具体包括:
当遍历到所述资源池列表内任一节点时,通过比较器比较所述节点上的资源是否满足所述资源请求;
其中,所述比较器支持自定义算法。
3.根据权利要求2所述的对等资源分配方法,其特征在于,在所述当遍历到所述资源池列表内任一节点时,通过比较器比较所述节点上的资源是否满足所述资源请求之后,还包括:
如果所述节点不满足所述资源请求,则继续遍历所述资源池列表内的其它节点。
4.根据权利要求2所述的对等资源分配方法,其特征在于,在所述当遍历到所述资源池列表内任一节点时,通过比较器比较所述节点上的资源是否满足所述资源请求之后,还包括:
预设变量N;
如果所述节点满足所述资源请求,则N=N+1;
判断N是否小于所述容忍上限;
如果N小于所述容忍上限,则继续遍历所述资源池列表内的其它节点;
其中,N的初始值为0。
5.根据权利要求4所述的对等资源分配方法,其特征在于,还包括:
如果N等于所述容忍上限,则判断出满足所述资源请求的所述节点的数量达到所述容忍上限。
6.根据权利要求1至5中任一项所述的对等资源分配方法,其特征在于,还包括:
根据所述资源池列表内节点的数量预设所述容忍上限。
7.一种对等资源分配系统,其特征在于,包括:
接收单元,用于接收资源请求,并获取资源池共享的全局节点列表;
第一遍历单元,用于遍历所述资源池列表内的节点;
第一判断单元,用于当遍历到所述资源池列表内任一节点时,判断所述节点是否满足所述资源请求;
选取单元,用于当满足所述资源请求的所述节点的数量达到容忍上限时,在满足所述资源请求的所述节点中选取匹配度最高的节点作为所述资源请求的资源分配节点;
分配单元,用于将所述资源分配节点上的资源分配至所述资源请求的请求方。
8.根据权利要求7所述的对等资源分配系统,其特征在于,所述第一判断单元,具体用于:
当遍历到所述资源池列表内任一节点时,通过比较器比较所述节点上的资源是否满足所述资源请求;
其中,所述比较器支持自定义算法。
9.根据权利要求8所述的对等资源分配系统,其特征在于,所述第一判断单元还包括:
第二遍历单元,用于如果所述节点不满足所述资源请求,则继续遍历所述资源池列表内的其它节点。
10.根据权利要求8所述的对等资源分配系统,其特征在于,所述第一判断单元还包括:
第一预设单元,用于预设变量N;
如果所述节点满足所述资源请求,则N=N+1;
第二判断单元,用于判断N是否小于所述容忍上限;
第三遍历单元,用于如果N小于所述容忍上限,则继续遍历所述资源池列表内的其它节点;
其中,N的初始值为0。
11.根据权利要求10所述的对等资源分配方法,其特征在于,所述第二判断单元还用于:
如果N等于所述容忍上限,则判断出满足所述资源请求的所述节点的数量达到所述容忍上限。
12.根据权利要求7至11中任一项所述的对等资源分配系统,其特征在于,还包括:
第二预设单元,用于根据所述资源池列表内节点的数量预设所述容忍上限。
13.一种计算机装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的对等资源分配方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的对等资源分配方法的步骤。
CN201711175734.3A 2017-11-22 2017-11-22 对等资源分配方法、对等资源分配系统及计算机装置 Pending CN107977270A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711175734.3A CN107977270A (zh) 2017-11-22 2017-11-22 对等资源分配方法、对等资源分配系统及计算机装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711175734.3A CN107977270A (zh) 2017-11-22 2017-11-22 对等资源分配方法、对等资源分配系统及计算机装置

Publications (1)

Publication Number Publication Date
CN107977270A true CN107977270A (zh) 2018-05-01

Family

ID=62010943

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711175734.3A Pending CN107977270A (zh) 2017-11-22 2017-11-22 对等资源分配方法、对等资源分配系统及计算机装置

Country Status (1)

Country Link
CN (1) CN107977270A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563510A (zh) * 2018-05-04 2018-09-21 湖南大学 面向e级计算的体系结构感知优化方法
CN111641705A (zh) * 2020-05-28 2020-09-08 浪潮电子信息产业股份有限公司 一种请求处理方法、装置、设备及可读存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1882166A (zh) * 2005-06-15 2006-12-20 华为技术有限公司 一种根据负载状况选择服务节点的方法
CN101345919A (zh) * 2008-08-12 2009-01-14 中兴通讯股份有限公司 服务节点选择方法及装置
CN103036927A (zh) * 2011-09-29 2013-04-10 中国电信股份有限公司 智能交通控制方法、装置与系统
CN104133727A (zh) * 2014-08-08 2014-11-05 成都致云科技有限公司 基于实时资源负载分配的方法
CN106130765A (zh) * 2016-06-23 2016-11-16 杭州华三通信技术有限公司 虚拟桌面分配方法及装置
CN106231564A (zh) * 2016-07-20 2016-12-14 湖南大学 一种方位优先的位置指纹室内定位方法
CN106447173A (zh) * 2016-09-05 2017-02-22 北京理工大学 一种支持任意流程结构的云工作流调度方法
CN107039984A (zh) * 2017-06-19 2017-08-11 国网重庆市电力公司电力科学研究院 一种无功电压分区方法
CN107241386A (zh) * 2017-05-05 2017-10-10 中广热点云科技有限公司 一种网络节点筛选方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1882166A (zh) * 2005-06-15 2006-12-20 华为技术有限公司 一种根据负载状况选择服务节点的方法
CN101345919A (zh) * 2008-08-12 2009-01-14 中兴通讯股份有限公司 服务节点选择方法及装置
CN103036927A (zh) * 2011-09-29 2013-04-10 中国电信股份有限公司 智能交通控制方法、装置与系统
CN104133727A (zh) * 2014-08-08 2014-11-05 成都致云科技有限公司 基于实时资源负载分配的方法
CN106130765A (zh) * 2016-06-23 2016-11-16 杭州华三通信技术有限公司 虚拟桌面分配方法及装置
CN106231564A (zh) * 2016-07-20 2016-12-14 湖南大学 一种方位优先的位置指纹室内定位方法
CN106447173A (zh) * 2016-09-05 2017-02-22 北京理工大学 一种支持任意流程结构的云工作流调度方法
CN107241386A (zh) * 2017-05-05 2017-10-10 中广热点云科技有限公司 一种网络节点筛选方法及系统
CN107039984A (zh) * 2017-06-19 2017-08-11 国网重庆市电力公司电力科学研究院 一种无功电压分区方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108563510A (zh) * 2018-05-04 2018-09-21 湖南大学 面向e级计算的体系结构感知优化方法
CN111641705A (zh) * 2020-05-28 2020-09-08 浪潮电子信息产业股份有限公司 一种请求处理方法、装置、设备及可读存储介质

Similar Documents

Publication Publication Date Title
Sefati et al. Load balancing in cloud computing environment using the Grey wolf optimization algorithm based on the reliability: performance evaluation
Masdari et al. Efficient task and workflow scheduling in inter-cloud environments: challenges and opportunities
US9417903B2 (en) Storage management for a cluster of integrated computing systems comprising integrated resource infrastructure using storage resource agents and synchronized inter-system storage priority map
US20130111027A1 (en) Accessing physical resources in a cloud computing environment
US20180359192A1 (en) Policy-based scaling of network resources
CN105103506B (zh) 用于为云计算网络中的非均匀带宽请求分配带宽的方法和系统
Song et al. An optimization-based scheme for efficient virtual machine placement
Patel et al. Survey on resource allocation strategies in cloud computing
AU2020421463B2 (en) Distributing computation workloads based on calculated compute gravity within differing computing paradigms
Song et al. A novel heuristic-based task selection and allocation framework in dynamic collaborative cloud service platform
US10243819B1 (en) Template generation based on analysis
Rani et al. An efficient and scalable hybrid task scheduling approach for cloud environment
Wei et al. Proactive virtualized resource management for service workflows in the cloud
US20140189092A1 (en) System and Method for Intelligent Data Center Positioning Mechanism in Cloud Computing
Meskar et al. Fair multi-resource allocation with external resource for mobile edge computing
Pentelas et al. Network service embedding across multiple resource dimensions
de Souza Toniolli et al. Resource allocation for multiple workflows in cloud-fog computing systems
Shekhar et al. MTLBP: a novel framework to assess multi-tenant load balance in cloud computing for cost-effective resource allocation
Li et al. PageRankVM: A pagerank based algorithm with anti-collocation constraints for virtual machine placement in cloud datacenters
Casetti et al. Arbitration among vertical services
Yakubu et al. Enhancing cloud performance using task scheduling strategy based on resource ranking and resource partitioning
CN107977270A (zh) 对等资源分配方法、对等资源分配系统及计算机装置
Baghban et al. Latency minimization model towards high efficiency edge-IoT service provisioning in horizontal edge federation
Kang et al. A multiagent brokering protocol for supporting Grid resource discovery
Sutagundar et al. Resource allocation for fog enhanced vehicular services

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180501