CN108536518A - 任务调度的方法及***、征信平台、服务终端及存储器 - Google Patents
任务调度的方法及***、征信平台、服务终端及存储器 Download PDFInfo
- Publication number
- CN108536518A CN108536518A CN201810261824.2A CN201810261824A CN108536518A CN 108536518 A CN108536518 A CN 108536518A CN 201810261824 A CN201810261824 A CN 201810261824A CN 108536518 A CN108536518 A CN 108536518A
- Authority
- CN
- China
- Prior art keywords
- task
- virtual machine
- resource
- received
- attribute
- 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
Links
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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
本发明公开了一种任务调度的方法及***、征信平台、服务终端及存储器,所述方法包括:接收用户提交的任务;根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。本发明中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务调度的方法及***、征信平台、服务终端及存储器。
背景技术
随着移动互联网的快速发展以及互联网4G技术的不断成熟,网络访问用户、访问流量以及访问请求数都在成倍增长,世界各地的互联网公司都在竭尽全力来争夺由移动互联网用户不断增长所带来的商机。据不完全统计,Google的服务器数量早已突破1000万台,而国内像阿里巴巴、新浪、百度等互联网企业的服务器也都达到数万台。必须采取高效合理的方法来部署这些服务器,才能为企业提供稳定的商业服务。另外,服务器数量的扩充需求推高了互联网企业的成本,每扩展一台服务器都会给互联网企业带来新的成本。与此同时,集群的扩展也给数据中心的运行环境带来了不稳定性,新增的服务器所带来的访问量在服务器端极度不均衡,即有时忙的服务器分配的访问量大,闲的服务器反而分配较小,这种情况是不安全的,容易导致服务器宕机而形成网络阻塞。如果是集群的中心节点出现问题,整个集群就会崩溃。
在商业和技术需求双重因素的驱使下,云计算技术在不同的互联网公司得到了充分发展。这些企业的数据中心再也不像原始单点集成式那样简单的部署服务器,而是采用了更高效的体系架构,更灵活的集群部署,更合理的资源配置来构建资源服务器池,而最能体现这样特点的架构无疑是云计算服务体系架构。云计算技术是分布式计算技术、虚拟机技术、负载均衡技术等传统技术的综合发展。
云计算任务调度的主要作用是将用户的资源申请任务通过一定的策略方法分配至各个虚拟机,由虚拟机完成用户的任务请求。目前,常用的任务调度方法关注的是如何将任务合理地分配给虚拟机,使各节点的负载达到均衡。当批量任务到达,需要进行任务调度时,就会产生多个任务在虚拟机内排队等候被执行,造成任务的响应时间延长,这样会增加用户的等待时间,对于实时性需求高的任务,就无法满足用户的QoS需求,由于调度无法真正实现负载均衡时会影响资源利用效率,降低任务执行效率。
发明内容
本发明要解决的技术问题在于针对现有技术的仅根据任务接收的时间先后来分配虚拟机,导致调度不均衡,影响任务执行效率的问题,提供了一种任务调度的方法及***、征信平台、服务终端及存储器。
本发明解决其技术问题所采用的技术方案是:构造一种任务分配的方法,包括如下步骤:
接收用户提交的任务;
根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间处理级别。
在本发明上述任务调度的方法中,所述根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机具体包括:
判断当前是否有闲置的虚拟机;
在当前有闲置的虚拟机时,基于所接收的任务的属性及所述闲置的虚拟机的资源属性为所述任务分配虚拟机;
在当前无闲置的虚拟机时,基于所接收的任务的处理级别来分配虚拟机。
在本发明上述任务调度的方法中,所述基于所接收的任务的属性及所述闲置的虚拟机的资源属性为所述任务分配虚拟机具体包括:
获取当前闲置的虚拟机的资源属性信息;
当所述闲置的虚拟机不止一台时,对所述闲置的虚拟机进行排序,获得闲置的虚拟机队列;
基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机;
为所接收的任务分配所选择的虚拟机。
在本发明上述任务调度的方法中,所述基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机具体包括:
获取所接收的任务需要使用的执行资源;
从所述虚拟机队列中选择与所述执行资源匹配的虚拟机。
在本发明上述任务调度的方法中,所述基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机具体包括:
获取所接收的任务需要使用的执行资源及所述任务的处理级别;
获取执行资源大于或等于所述需要使用的执行资源的虚拟机列表;
当所获取的虚拟机不止一台时,基于所接收的任务的处理级别从所获取的虚拟机列表中选择虚拟机。
在本发明上述任务调度的方法中,所述基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机具体包括:
获取所接收任务的计算级别;
获取每一台虚拟机的运算速度;
从预设的运算速度与计算级别的对应关系表中选择与所获取的计算级别对应的运算速度对应的虚拟机。
本发明还构造了一种任务调度的***,所述***包括:
接收模块,用于接收用户提交的任务;
分配模块,用于根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
本发明还构造了一种征信平台,所述征信平台包括一种任务调度的***,所述***包括:
接收模块,用于接收用户提交的任务;
分配模块,用于根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
本发明还构造了一种存储器,所述存储器存储有计算机程序,其特征在于,所述计算机程序被处理器执行如下步骤:
接收用户提交的任务;
根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
本发明还构造了一种服务终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行如下步骤:
接收用户提交的任务;
根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
实施本发明任务调度的方法及***、征信平台、服务终端及存储器,可达到以下有益效果:
一、根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
二、根据任务的处理级别来分配虚拟机,可提高任务分配的合理性,提高任务处理的效率。
三、根据虚拟机集群的运行状态结合任务的属性来分配虚拟机,可提高任务分配的均衡性,贴近用户实际需求。
附图说明
图1是本发明提供的一种任务调度的方法的流程图;
图2是本发明提供的一种任务调度的方法的步骤S2的具体流程图;
图3是本发明提供的一种任务调度的方法的步骤S22的具体流程图;
图4是本发明提供的一种任务分配的***的结构框图;
图5是本发明提供的一种任务分配的***的分配模块2的具体结构框图;
图6是本发明提供的一种服务终端的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种任务调度的方法,如图1所示,示出了本发明提供的一种任务调度的方法的流程图,该方法包括:
步骤S1,接收用户提交的任务;
具体地,用户根据自身需求提交任务,该任务通常是计算或者数据处理任务,用户可通过平台提交任务,还可以通过其他服务终端提交,此处对此不作限制。
步骤S2,根据任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机;
具体地,根据任务的属性及当前的虚拟机集群的运行状况来为任务分配虚拟机,该任务的属性至少包括以下之一:任务需要的执行资源、任务的处理级别、任务的执行时间、任务的类型等,任务的处理级别可包括:紧急处理级别、重要处理级别、普通处理级别等,任务的执行时间即任务开始执行时间到执行结束的时间点之间的时间段。任务需要的执行资源即执行该任务需要使用的资源(如计算资源等)。虚拟机集群包括两个以上虚拟机,用于执行任务,在本实施例中,平台或者服务器包括执行器及分配器,所述执行器中安装上述虚拟机集群,所述分配器用于接收任务并为每一任务分配虚拟机。当用户提交一任务时,为任务分配相应的虚拟机,当虚拟机集群的所有虚拟机都在执行任务时,则将任务按照一定的规则加入到资源队列中,该资源队列即任务队列,可按照任务提交的先后顺序,或者任务的优先级,或者其他规则,此处对此不作限制。在任务处理级别一致的情况下,任务是按提交的时间先后排序。
本实施例中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
在本实施例的一个优选方案中,该步骤S2之后还可包括:
步骤S3,向用户反馈虚拟机的执行结果;
具体地,向用户反馈执行结果,该执行结果可包括:执行的过程及结果数据、执行起始及结束的时间等。
在本实施例的一个优选方案中,该步骤S3之后还可包括:
接收用户基于执行结果反馈的评价信息。
在本实施例的一个优选方案中,该步骤S2之后、步骤S3之前还可包括:
接收到正在执行任务的虚拟机出现故障的提示;
判断出现故障的虚拟机是否资源不足;
当判断为是时,为该虚拟机划拨指定数量的资源;
具体地,判断该虚拟机是否无执行资源或者执行资源已解决临界值,但当前尚未完成任务,当判断为是时,获取该虚拟机实际需要的执行资源,为该虚拟机划拨需要的执行资源,以使得该虚拟机能顺利完成执行任务。
需要说明的是,每一用户提交的任务均通过上述方式分配虚拟机,服务终端预先安装有两个以上虚拟机,每一台虚拟机可执行一个任务,需要说明的是,该虚拟机仅是本实施例的一个例子,在很多情况下,一个任务可能需要一个或者多个虚拟机同时执行(此时可认为多个虚拟机的执行资源进行整合),本实施例中,以每一台虚拟机执行一个任务为例来描述,但实际操作过程中不限于此。
在本实施例的一个优选方案中,如图2所示,为本发明提供的一种任务调度的方法的步骤S2的具体流程图,该步骤S2具体包括:
步骤S21,判断当前是否有闲置的虚拟机;
具体地,在接收到任务时,首先是判断是否有限制的虚拟机,如有转到步骤S22,否则转到步骤S23;
步骤S22,基于所接收的任务的属性及闲置的虚拟机的资源属性为任务分配虚拟机。
具体地,在有闲置的虚拟机时,根据该任务的属性及当前闲置的虚拟机的资源数量来分配虚拟机。
步骤S23,基于所接收的任务的处理级别来分配虚拟机。
具体地,在无闲置的虚拟机时,根据任务的处理级别来分配虚拟机。在本实施例中,预先为在无闲置的虚拟机的情况下的不同处理级别的任务设置不同的分配方式,例如,当任务为紧急处理级别时,开启新的虚拟机,将该任务分配至新的虚拟机,需要说明的是根据该任务需要使用的执行资源来开启新的虚拟机,即该新的虚拟机的执行资源应大于或等于该任务需要使用的执行资源。当任务为高级处理级别时,将该任务***到资源队列中,在很多任务时,该资源队列可包括:高级处理级别队列、普通处理级别队列,且高级处理级别队列排在普通处理级别队列之前。此时将该任务***到高级处理级别队列中,在本实施例的进一步优选方案中,还可根据该任务的执行时限(如最迟需要完成的时间)来将该任务***到高级处理级别队列中,例如,该任务的执行时限为1天之内,而当前的高级处理级别队列中的任务的执行时限均在两天之内,则将执行时限为一天之内的任务排在高级处理级别队列的最前面。在本实施例的另一个优选方案中,还可以根据任务的接收时间来排列,此时将该任务***到资源队列的最末端的位置。
在本实施例的一个优选方案中,如图3所示,为本发明提供的一种任务调度的方法的步骤S22的具体流程图,该步骤S22具体包括:
步骤S221,获取当前闲置的虚拟机的资源属性信息;
具体地,获取当前闲置的虚拟机的资源属性信息,该资源属性信息包括虚拟机的执行资源(即执行任务的资源)。
步骤S222,当闲置的虚拟机不止一个时,对闲置的虚拟进行排序,获得闲置的虚拟机队列;
具体地,当闲置的虚拟机不止一个时,基于每一闲置的虚拟机的执行资源大小对闲置的虚拟机进行排序,获得闲置的虚拟机队列,可按照执行资源从大到小的顺序,或者从小到的顺序进行排序。
步骤S223,基于所接收的任务的属性从虚拟机队列中选择一台虚拟机;
具体地,根据任务的属性从虚拟机队列中选择一台虚拟机。
在本实施例的一个优选方案中,该步骤S223具体包括:获取所接收的任务需要使用的执行资源,从虚拟机队列中选择与执行资源匹配的虚拟机。
优选地,获取该任务需要使用的执行资源,从闲置的虚拟机队列中选择与该任务的执行资源匹配的虚拟机,即选择与任务的执行资源略大的执行资源对应的虚拟机,为了合理利用资源,此时只选择与任务需要使用的执行资源匹配的虚拟机,可避免后续有新的需要使用的执行资源更多的任务时无法分配合适的虚拟机,提高资源利用效率,提高资源均衡性。另外,不会选择比任务需要使用的执行资源小的执行资源对应的虚拟机是为了提高任务执行的效率。
在本实施例的另一个优选方案中,该步骤S223具体包括:
获取所接收的任务需要使用的执行资源及任务的处理级别;
具体地,分析所接收任务需要使用的执行资源及对应的处理级别;
获取执行资源大于或等于该任务需要使用的执行资源的虚拟机;
具体地,将任务的执行资源与闲置的虚拟机队列中的每一台虚拟机的执行资源进行比较,获得执行资源大于或等于任务需要使用的执行资源的虚拟机,统计其数量。
当所获取的虚拟机不止一个时,基于所接收的任务的处理级别从所获取的虚拟机中选择虚拟机。
具体地,当不止一个虚拟机的执行资源大于或等于任务需要使用的执行资源时,根据任务的处理级别来进行选择,例如,当任务的处理级别为紧急时,选择运行速度最快的虚拟机,当任务的处理级别为高级处理级别时,选择运行速度较快的虚拟机,当任务的处理级别为普通处理级别时,选择运行速度普通的虚拟机(虚拟机的运行速度分最快、较快及普通三档)。其中,运算速度的分档可预先设置或者在创建虚拟机时已经设置好,此处对此不作限制,而运行速度的分档可根据实际情况而设置,此处对此也不作限制。
在本实施例的另一个优选方案中,该步骤S223具体包括:
获取所接收任务的计算级别;
具体地,根据所接收的任务的处理时限来获取任务的计算级别,用户在提交任务时会设置相应的处理时限(例如一天之内处理、两天之内处理等),在预设的处理时限与计算级别之间的对应关系表,例如:两小时之内处理的时限对应的计算级别为五级、两小时~四小时之内处理的时限对应的计算级别为四级、五小时~七小时之内的处理时限对应的计算级别为三级、八小时~十小时之内的处理时限对应的计算级别为二级,十小时以上的处理实现对应的一级,五级为最优先处理。
获取每一台虚拟机的运算速度;
具体地,分析比对每一台虚拟机的运算速度(即MIPS,Million Instructions PerSecond,平均执行速度),得到运算速度列表(即根据运算速度对虚拟机进行排序);
从预设的运算速度与计算级别的对应关系表中选择与所述计算级别对应的运算速度对应的虚拟机;具体地,预先设置一运算速度与计算级别的对应关系表(假设每一台虚拟机的运算速度不一致),即每一台虚拟机对应一计算级别,具体的数值对应关系可根据实际情况而设,此处对此不作限制。例如,对应计算级别为三级时,运算速度为每秒执行5000000~7000000指令。
具体地,根据任务的计算级别选择对应运算速度的虚拟机,例如,从上述对应关系表中获取与计算级别对应的运算速度。
步骤S224,将所接收的任务分配所选择的虚拟机。
具体地,将所接收的任务分配给所选择的虚拟机。
需要说明的是,上述步骤S222之前还可包括:
步骤S225,判断闲置的虚拟机是否不止一个;
具体地,判断闲置的虚拟机是否不止一个,当不止一个时,转到上述步骤S222,否则转到步骤S226;
步骤S226,判断所接收的任务需要使用的执行资源是否大于闲置的虚拟机的执行资源;
具体地,首先判断所接收的任务需要使用的执行资源是否大于闲置的虚拟机的执行资源,在判断为是时,表示该虚拟机无法执行该任务,转到步骤S23,否则转到步骤S224。
本实施例中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
其次,根据任务的处理级别来分配虚拟机,可提高任务分配的合理性,提高任务处理的效率。
再者,根据虚拟机集群的运行状态结合任务的属性来分配虚拟机,可提高任务分配的均衡性,贴近用户实际需求。
基于图1至图3所示的任务分配的方法,本发明还揭示了一种任务分配的***,图4示出了本发明提供的一种任务分配的***的结构框图,该***包括:接收模块1、与接收模块1连接的分配模块2,其中:
接收模块1,用于接收用户提交的任务;
具体地,用户根据自身需求提交任务,该任务通常是计算或者数据处理任务,用户可通过平台提交任务,还可以通过其他服务终端提交,此处对此不作限制。
分配模块2,用于根据任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机;
具体地,根据任务的属性及当前的虚拟机集群的运行状况来为任务分配虚拟机,该任务的属性至少包括以下之一:任务需要的执行资源、任务的处理级别、任务的执行时间、任务的类型等,任务的处理级别可包括:紧急处理级别、重要处理级别、普通处理级别等,任务的执行时间即任务开始执行时间到执行结束的时间点之间的时间段。任务需要的执行资源即执行该任务需要使用的资源(如计算资源等)。虚拟机集群包括两个以上虚拟机,用于执行任务,在本实施例中,平台或者服务器包括执行器及分配器,所述执行器中安装上述虚拟机集群,所述分配器用于接收任务并为每一任务分配虚拟机。当用户提交一任务时,为任务分配相应的虚拟机,当虚拟机集群的所有虚拟机都在执行任务时,则将任务按照一定的规则加入到资源队列中,该资源队列即任务队列,可按照任务提交的先后顺序,或者任务的优先级,或者其他规则,此处对此不作限制。在任务处理级别一致的情况下,任务是按提交的时间先后排序。
本实施例中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
在本实施例的一个优选方案中,该***还可包括:
与分配模块2连接的反馈模块3,其中:
反馈模块3,用于向用户反馈虚拟机的执行结果;
具体地,向用户反馈执行结果,该执行结果可包括:执行的过程及结果数据、执行起始及结束的时间等。
在本实施例的一个优选方案中,该接收模块1还可用于:
接收用户基于执行结果反馈的评价信息。
需要说明的是,每一用户提交的任务均通过上述方式分配虚拟机,服务终端预先安装有两个以上虚拟机,每一台虚拟机可执行一个任务,需要说明的是,该虚拟机仅是本实施例的一个例子,在很多情况下,一个任务可能需要一个或者多个虚拟机同时执行(此时可认为多个虚拟机的执行资源进行整合),本实施例中,以每一台虚拟机执行一个任务为例来描述,但实际操作过程中不限于此。
在本实施例的一个优选方案中,该***还可包括:
故障判处模块,用于接收到正在执行任务的虚拟机出现故障的提示;
判断出现故障的虚拟机是否资源不足;
当判断为是时,为该虚拟机划拨指定数量的资源;
具体地,判断该虚拟机是否无执行资源或者执行资源已解决临界值,但当前尚未完成任务,当判断为是时,获取该虚拟机实际需要的执行资源,为该虚拟机划拨需要的执行资源,以使得该虚拟机能顺利完成执行任务。
在本实施例的一个优选方案中,如图5所示,为本发明提供的一种任务分配的***的分配模块2的具体结构框图,该分配模块2具体包括:判断单元21、与判断单元21连接的第一分配单元22及第二分配单元23,其中:
判断单元21,用于判断当前是否有闲置的虚拟机;
具体地,在接收到任务时,首先是判断是否有限制的虚拟机,当判断为是时反馈给第一分配单元22,否则反馈给第二分配单元23;
第一分配单元22,用于基于所接收的任务的属性及闲置的虚拟机的资源属性为任务分配虚拟机。
具体地,在有闲置的虚拟机时,根据该任务的属性及当前闲置的虚拟机的资源数量来分配虚拟机。
第二分配单元23,用于基于所接收的任务的处理级别来分配虚拟机。
具体地,在无闲置的虚拟机时,根据任务的处理级别来分配虚拟机。在本实施例中,预先为在无闲置的虚拟机的情况下的不同处理级别的任务设置不同的分配方式,例如,当任务为紧急处理级别时,开启新的虚拟机,将该任务分配至新的虚拟机,需要说明的是根据该任务需要使用的执行资源来开启新的虚拟机,即该新的虚拟机的执行资源应大于或等于该任务需要使用的执行资源。当任务为高级处理级别时,将该任务***到资源队列中,在很多任务时,该资源队列可包括:高级处理级别队列、普通处理级别队列,且高级处理级别队列排在普通处理级别队列之前。此时将该任务***到高级处理级别队列中,在本实施例的进一步优选方案中,还可根据该任务的执行时限(如最迟需要完成的时间)来将该任务***到高级处理级别队列中,例如,该任务的执行时限为1天之内,而当前的高级处理级别队列中的任务的执行时限均在两天之内,则将执行时限为一天之内的任务排在高级处理级别队列的最前面。在本实施例的另一个优选方案中,还可以根据任务的接收时间来排列,此时将该任务***到资源队列的最末端的位置。
优选地,该第一分配单元22具体包括:获取子单元、与获取子单元连接的排序子单元、与排序子单元连接的选择子单元、与选择子单元连接的分配子单元,其中:
获取子单元,用于获取当前闲置的虚拟机的资源属性信息;
具体地,获取当前闲置的虚拟机的资源属性信息,该资源属性信息包括虚拟机的执行资源(即执行任务的资源)。
排序子单元,用于当闲置的虚拟机不止一个时,对闲置的虚拟进行排序,获得闲置的虚拟机队列;
具体地,当闲置的虚拟机不止一个时,基于每一闲置的虚拟机的执行资源大小对闲置的虚拟机进行排序,获得闲置的虚拟机队列,可按照执行资源从大到小的顺序,或者从小到的顺序进行排序。
选择子单元,用于基于所接收的任务的属性从虚拟机队列中选择一台虚拟机;
具体地,根据任务的属性从虚拟机队列中选择一台虚拟机。
在本实施例的一个优选方案中,该选择子单元具体用于:
获取所接收的任务需要使用的执行资源,从虚拟机队列中选择与执行资源匹配的虚拟机。
优选地,获取该任务需要使用的执行资源,从闲置的虚拟机队列中选择与该任务的执行资源匹配的虚拟机,即选择与任务的执行资源略大的执行资源对应的虚拟机,为了合理利用资源,此时只选择与任务需要使用的执行资源匹配的虚拟机,可避免后续有新的需要使用的执行资源更多的任务时无法分配合适的虚拟机,提高资源利用效率,提高资源均衡性。另外,不会选择比任务需要使用的执行资源小的执行资源对应的虚拟机是为了提高任务执行的效率。
在本实施例的另一个优选方案中,该选择子单元具体用于:
获取所接收的任务需要使用的执行资源及任务的处理级别;
具体地,分析所接收任务需要使用的执行资源及对应的处理级别;
获取执行资源大于或等于该任务需要使用的执行资源的虚拟机;
具体地,将任务的执行资源与闲置的虚拟机队列中的每一台虚拟机的执行资源进行比较,获得执行资源大于或等于任务需要使用的执行资源的虚拟机,统计其数量。
当所获取的虚拟机不止一个时,基于所接收的任务的处理级别从所获取的虚拟机中选择虚拟机。
具体地,当不止一个虚拟机的执行资源大于或等于任务需要使用的执行资源时,根据任务的处理级别来进行选择,例如,当任务的处理级别为紧急时,选择运行速度最快的虚拟机,当任务的处理级别为高级处理级别时,选择运行速度较快的虚拟机,当任务的处理级别为普通处理级别时,选择运行速度普通的虚拟机(虚拟机的运行速度分最快、较快及普通三档)。其中,运算速度的分档可预先设置或者在创建虚拟机时已经设置好,此处对此不作限制,而运行速度的分档可根据实际情况而设置,此处对此也不作限制。
在本实施例的另一个优选方案中,该选择子单元具体用于:
获取所接收任务的计算级别;
具体地,根据所接收的任务的处理时限来获取任务的计算级别,用户在提交任务时会设置相应的处理时限(例如一天之内处理、两天之内处理等),在预设的处理时限与计算级别之间的对应关系表,例如:两小时之内处理的时限对应的计算级别为五级、两小时~四小时之内处理的时限对应的计算级别为四级、五小时~七小时之内的处理时限对应的计算级别为三级、八小时~十小时之内的处理时限对应的计算级别为二级,十小时以上的处理实现对应的一级,五级为最优先处理。
获取每一台虚拟机的运算速度;
具体地,分析比对每一台虚拟机的运算速度(即MIPS,Million Instructions PerSecond,平均执行速度),得到运算速度列表(即根据运算速度对虚拟机进行排序);
从预设的运算速度与计算级别的对应关系表中选择与所述计算级别对应的运算速度对应的虚拟机;具体地,预先设置一运算速度与计算级别的对应关系表(假设每一台虚拟机的运算速度不一致),即每一台虚拟机对应一计算级别,具体的数值对应关系可根据实际情况而设,此处对此不作限制。例如,对应计算级别为三级时,运算速度为每秒执行5000000~7000000指令。
具体地,根据任务的计算级别选择对应运算速度的虚拟机,例如,从上述对应关系表中获取与计算级别对应的运算速度。
分配子单元,用于为所接收的任务分配所选择的虚拟机。
具体地,将所接收的任务分配给所选择的虚拟机。
在本实施例的一个优选方案中,该判断子单元还用于判断闲置的虚拟机是否不止一个,当不止一个时反馈给选择子单元,否则所述判断子单元进一步用于判断所接收的任务需要使用的执行资源是否大于闲置的虚拟机的执行资源;
具体地,首先判断所接收的任务需要使用的执行资源是否大于闲置的虚拟机的执行资源,在判断为是时,表示该虚拟机无法执行该任务,反馈给第二分配单元23,否则反馈给分配子单元。
本实施例中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
其次,根据任务的处理级别来分配虚拟机,可提高任务分配的合理性,提高任务处理的效率。
再者,根据虚拟机集群的运行状态结合任务的属性来分配虚拟机,可提高任务分配的均衡性,贴近用户实际需求。
本发明还提出一种征信平台,该征信平台主要用于存储征信数据、供用户查询征信信息等,或者对企业或者个人的各方面数据的收集等。该征信平台包括:业务应用层、云计算平台层及基础设施层,该基础设施层包括一种任务分配的***,该任务分配的***与上述实施例描述的一种任务分配的***的具体结构及工作原理基本一致,具体可参照上述实施例的描述,此处不再赘述。
图6示出了本发明提供的一种服务终端的结构图,该服务终端包括:存储器(memory)61、处理器(processor)62、通信接口(Communications Interface)63和总线64,该处理器62、存储器61、通信接口63通过总线64完成相互之间的交互通信。
存储器61,用于存储各种数据;
具体地,存储器61用于存储各种数据,例如通信过程中的数据、接收的数据等,此处对此不作限制,该存储器还包括有多个计算机程序。
通信接口63,用于该服务终端的通信设备之间的信息传输;
处理器62,用于调用存储器61中的各种计算机程序,以执行上述方法实施例所提供的一种任务分配的方法,例如:
接收用户提交的任务;
根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间处理级别。
本实施例中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
其次,根据任务的处理级别来分配虚拟机,可提高任务分配的合理性,提高任务处理的效率。
再者,根据虚拟机集群的运行状态结合任务的属性来分配虚拟机,可提高任务分配的均衡性,贴近用户实际需求。
本发明还提供一种存储器,该存储器存储有多个计算机程序,该多个计算机程序被处理器调用执行上述实施例所述的一种任务分配的方法。
本实施例中,根据任务的属性及虚拟机集群的运行状况来分配虚拟机,可一定程度上提高分配的均衡性,提高任务处理的效率。
其次,根据任务的处理级别来分配虚拟机,可提高任务分配的合理性,提高任务处理的效率。
再者,根据虚拟机集群的运行状态结合任务的属性来分配虚拟机,可提高任务分配的均衡性,贴近用户实际需求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可储存于一计算机可读取储存介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的储存介质可为磁碟、光盘、只读储存记忆体(Read Only Memory,ROM)或随机储存记忆体(Random ABBessMemory,RAM)等。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.一种任务调度的方法,其特征在于,包括:
接收用户提交的任务;
根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
2.根据权利要求1所述的方法,其特征在于,根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机具体包括:
判断当前是否有闲置的虚拟机;
在当前有闲置的虚拟机时,基于所接收的任务的属性及所述闲置的虚拟机的资源属性为所述任务分配虚拟机;
在当前无闲置的虚拟机时,基于所接收的任务的处理级别来分配虚拟机。
3.根据权利要求2所述的方法,其特征在于,所述基于所接收的任务的属性及所述闲置的虚拟机的资源属性为所述任务分配虚拟机具体包括:
获取当前闲置的虚拟机的资源属性信息;
当所述闲置的虚拟机不止一台时,对所述闲置的虚拟机进行排序,获得闲置的虚拟机队列;
基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机;
为所接收的任务分配所选择的虚拟机。
4.根据权利要求3所述的方法,其特征在于,所述基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机具体包括:
获取所接收的任务需要使用的执行资源;
从所述虚拟机队列中选择与所述执行资源匹配的虚拟机。
5.根据权利要求3所述的方法,其特征在于,所述基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机具体包括:
获取所接收的任务需要使用的执行资源及所述任务的处理级别;
获取执行资源大于或等于所述需要使用的执行资源的虚拟机;
当所获取的虚拟机不止一个时,基于所接收的任务的处理级别从所获取的虚拟机中选择虚拟机。
6.根据权利要求3所述的方法,其特征在于,所述基于所接收的任务的属性从所述虚拟机队列中选择一台虚拟机具体包括:
获取所接收任务的计算级别;
获取每一台虚拟机的运算速度;
从预设的运算速度与计算级别的对应关系表中选择与所获取的计算级别对应的运算速度对应的虚拟机。
7.一种任务调度的***,其特征在于,包括:
接收模块,用于接收用户提交的任务;
分配模块,用于根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
8.一种征信平台,其特征在于,包括如权利要求7所述的一种任务调度的***。
9.一种存储器,所述存储器存储有计算机程序,其特征在于,所述计算机程序被处理器执行如下步骤:
接收用户提交的任务;
根据所述任务的属性及当前的虚拟机集群的运行状况为所接收的任务分配虚拟机,所述属性至少包括以下之一:所述任务需要的执行资源、所述任务的处理级别、所述任务的执行时间。
10.一种服务终端,包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任意一项所述的任务调度的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810261824.2A CN108536518A (zh) | 2018-03-28 | 2018-03-28 | 任务调度的方法及***、征信平台、服务终端及存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810261824.2A CN108536518A (zh) | 2018-03-28 | 2018-03-28 | 任务调度的方法及***、征信平台、服务终端及存储器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108536518A true CN108536518A (zh) | 2018-09-14 |
Family
ID=63485311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810261824.2A Pending CN108536518A (zh) | 2018-03-28 | 2018-03-28 | 任务调度的方法及***、征信平台、服务终端及存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108536518A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109471707A (zh) * | 2018-10-12 | 2019-03-15 | 传化智联股份有限公司 | 调度任务的部署方法及装置 |
CN109784640A (zh) * | 2018-12-13 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 任务分配方法、装置、设备及计算机可读存储介质 |
CN113760309A (zh) * | 2020-06-04 | 2021-12-07 | 柯尼卡美能达株式会社 | 用于在集群***上部署服务的方法、程序以及*** |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605567A (zh) * | 2013-10-29 | 2014-02-26 | 河海大学 | 面向实时性需求变化的云计算任务调度方法 |
US20150026336A1 (en) * | 2013-06-28 | 2015-01-22 | Pepperdata, Inc. | Systems, methods, and devices for dynamic resource monitoring and allocation in a cluster system |
CN104572301A (zh) * | 2015-01-04 | 2015-04-29 | 中国联合网络通信集团有限公司 | 一种资源分配方法和*** |
CN106126317A (zh) * | 2016-06-24 | 2016-11-16 | 安徽师范大学 | 应用于云计算环境的虚拟机调度方法 |
CN106371893A (zh) * | 2016-08-31 | 2017-02-01 | 开封大学 | 一种云计算调度***和方法 |
CN106506670A (zh) * | 2016-11-21 | 2017-03-15 | 北京永信至诚科技股份有限公司 | 一种云平台虚拟资源高速调度方法与*** |
CN106897136A (zh) * | 2017-02-28 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种任务调度方法及装置 |
CN107087019A (zh) * | 2017-03-14 | 2017-08-22 | 西安电子科技大学 | 一种端云协同计算架构及任务调度装置及方法 |
US20180039317A1 (en) * | 2016-08-05 | 2018-02-08 | Ati Technologies Ulc | Fine-grain gpu power management and scheduling for virtual reality applications |
-
2018
- 2018-03-28 CN CN201810261824.2A patent/CN108536518A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150026336A1 (en) * | 2013-06-28 | 2015-01-22 | Pepperdata, Inc. | Systems, methods, and devices for dynamic resource monitoring and allocation in a cluster system |
CN103605567A (zh) * | 2013-10-29 | 2014-02-26 | 河海大学 | 面向实时性需求变化的云计算任务调度方法 |
CN104572301A (zh) * | 2015-01-04 | 2015-04-29 | 中国联合网络通信集团有限公司 | 一种资源分配方法和*** |
CN106126317A (zh) * | 2016-06-24 | 2016-11-16 | 安徽师范大学 | 应用于云计算环境的虚拟机调度方法 |
US20180039317A1 (en) * | 2016-08-05 | 2018-02-08 | Ati Technologies Ulc | Fine-grain gpu power management and scheduling for virtual reality applications |
CN106371893A (zh) * | 2016-08-31 | 2017-02-01 | 开封大学 | 一种云计算调度***和方法 |
CN106506670A (zh) * | 2016-11-21 | 2017-03-15 | 北京永信至诚科技股份有限公司 | 一种云平台虚拟资源高速调度方法与*** |
CN106897136A (zh) * | 2017-02-28 | 2017-06-27 | 郑州云海信息技术有限公司 | 一种任务调度方法及装置 |
CN107087019A (zh) * | 2017-03-14 | 2017-08-22 | 西安电子科技大学 | 一种端云协同计算架构及任务调度装置及方法 |
Non-Patent Citations (2)
Title |
---|
CHING-CHI LIN 等: "Energy-Aware Virtual Machine Dynamic Provision and Scheduling for Cloud Computing", 《2011 IEEE 4TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING》 * |
陈黄科 等: "云计算中资源延迟感知的实时任务调度方法", 《计算机研究与发展》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109471707A (zh) * | 2018-10-12 | 2019-03-15 | 传化智联股份有限公司 | 调度任务的部署方法及装置 |
CN109784640A (zh) * | 2018-12-13 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 任务分配方法、装置、设备及计算机可读存储介质 |
CN113760309A (zh) * | 2020-06-04 | 2021-12-07 | 柯尼卡美能达株式会社 | 用于在集群***上部署服务的方法、程序以及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | A new service mechanism for profit optimizations of a cloud provider and its users | |
Mansouri et al. | Cost-based job scheduling strategy in cloud computing environments | |
CN104239141B (zh) | 数据中心中基于工作流关键路径的任务优化调度方法 | |
CN110209496A (zh) | 基于数据处理的任务分片方法、装置及分片服务器 | |
CN107357652B (zh) | 一种基于分段排序及标准差调整因子的云计算任务调度方法 | |
CN108701059A (zh) | 多租户资源分配方法和*** | |
CN107992359A (zh) | 一种云环境下代价感知的任务调度算法 | |
Liu et al. | An economical and SLO-guaranteed cloud storage service across multiple cloud service providers | |
CN113454614A (zh) | 用于分布式计算中的资源划分的***和方法 | |
CN110351384A (zh) | 大数据平台资源管理方法、装置、设备及可读存储介质 | |
Tantalaki et al. | Pipeline-based linear scheduling of big data streams in the cloud | |
Liu et al. | A survey on virtual machine scheduling in cloud computing | |
CN108845874A (zh) | 资源的动态分配方法及服务器 | |
CN108536518A (zh) | 任务调度的方法及***、征信平台、服务终端及存储器 | |
CN106897136A (zh) | 一种任务调度方法及装置 | |
CN104407912A (zh) | 一种虚拟机配置方法及装置 | |
CN103997515B (zh) | 一种分布式云中计算中心选择方法及其应用 | |
AlKhatib et al. | Load balancing techniques in software-defined cloud computing: an overview | |
CN110311965A (zh) | 一种云计算环境下的任务调度方法及*** | |
Sun et al. | ET2FA: A hybrid heuristic algorithm for deadline-constrained workflow scheduling in cloud | |
Yagoubi et al. | Load balancing strategy in grid environment | |
Johora et al. | A load balancing strategy for reducing data loss risk on cloud using remodified throttled algorithm | |
Ramezani et al. | Task scheduling in cloud environments: A survey of population‐based evolutionary algorithms | |
CN109062683A (zh) | 主机资源分配的方法、装置及计算机可读存储介质 | |
CN112306642A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180914 |