CN110443529A - 资源调度方法、装置、设备与计算机可读存储介质 - Google Patents

资源调度方法、装置、设备与计算机可读存储介质 Download PDF

Info

Publication number
CN110443529A
CN110443529A CN201910845565.2A CN201910845565A CN110443529A CN 110443529 A CN110443529 A CN 110443529A CN 201910845565 A CN201910845565 A CN 201910845565A CN 110443529 A CN110443529 A CN 110443529A
Authority
CN
China
Prior art keywords
resource
scheduling
dispatch
dispatch command
target
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
CN201910845565.2A
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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910845565.2A priority Critical patent/CN110443529A/zh
Publication of CN110443529A publication Critical patent/CN110443529A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06312Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种资源调度方法,包括:若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。本发明还公开了一种资源调度装置、设备和计算机可读存储介质。本发明通过目标调度器的调度规则,以及调度指令的需求条件,调取对应的目标资源,实现针对性调度,提高调度的准确性。

Description

资源调度方法、装置、设备与计算机可读存储介质
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及资源调度方法、装置、设备与计算机可读存储介质。
背景技术
近年来,随着金融科技(Fintech),尤其是互联网金融的不断发展,调度技术被引入银行等金融机构的日常服务中。在银行等金融机构的日常服务过程中,出于管控需求,需要对各类资源进行调度,以对各类资源进行合理利用,并保证相应业务能友好进行,因此,对资源进行调度是银行等金融机构日常必做的一项工作。
现有技术中,由于各类资源分布较为分散,一般采用分布式资源调度程序,对调度资源池中的资源进行监控,并根据监控所得资源的利用情况,将资源进行分配。
然而现有的分布式资源调度程序灵活性不高,无法针对当前用户的调度需求进行合理的调度,导致调度不准确。
发明内容
本发明的主要目的在于提出一种资源调度方法、装置、设备与计算机可读存储介质,旨在实现针对性调度,提高调度的准确性。
为实现上述目的,本发明提供一种资源调度方法,所述资源调度方法包括如下步骤:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;
读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;
在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
优选地,所述若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器的步骤包括:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待配置调度器;
接收基于所述待配置调度器输入的所述调度规则,并基于所述调度规则对所述待配置调度器进行配置,以得到所述调度指令对应的目标调度器。
优选地,所述读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源的步骤包括:
读取所述目标调度器的调度规则,所述调度规则包括属性过滤规则和排序规则;
在所述目标调度器对应的调度资源池中选出所述属性过滤规则对应的调度资源,并按照所述排序规则,对所述调度资源进行排序。
优选地,所述在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端的步骤包括:
在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并开启所述第一目标资源对应的第一资源锁;
将开启所述第一资源锁的所述第一目标资源返回所述终端。
优选地,所述将开启所述第一资源锁的所述第一目标资源返回所述终端的步骤包括:
检测是否存在基于所述第一目标资源触发的确认指令;
若存在,则将开启所述第一资源锁的所述第一目标资源返回所述终端。
优选地,所述检测是否存在基于所述第一目标资源触发的确认指令的步骤之后,所述资源调度方法还包括:
若不存在,则基于所述第一资源锁和所述需求条件,确定所述调度指令对应的第二目标资源,并开启所述第二目标资源对应的第二资源锁;
将开启所述第二资源锁的所述第二目标资源返回所述终端。
优选地,所述若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器的步骤包括:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待确认调度器,并确定所述待确认调度器对应的调度锁是否开启;
若否,则将所述待确认调度器设置为目标调度器,并对所述目标调度器上锁。
此外,为实现上述目的,本发明还提供一种资源调度装置,所述资源调度装置包括:
检测模块,用于若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;
确定模块,用于读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;
返回模块,用于在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
优选地,所述检测模块还用于:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待配置调度器;
接收基于所述待配置调度器输入的所述调度规则,并基于所述调度规则对所述待配置调度器进行配置,以得到所述调度指令对应的目标调度器。
优选地,所述确定模块还用于:
读取所述目标调度器的调度规则,所述调度规则包括属性过滤规则和排序规则;
在所述目标调度器对应的调度资源池中选出所述属性过滤规则对应的调度资源,并按照所述排序规则,对所述调度资源进行排序。
优选地,所述返回模块还用于:
在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并开启所述第一目标资源对应的第一资源锁;
将开启所述第一资源锁的所述第一目标资源返回所述终端。
优选地,所述返回模块还用于:
检测是否存在基于所述第一目标资源触发的确认指令;
若存在,则将开启所述第一资源锁的所述第一目标资源返回所述终端。
优选地,所述返回模块还用于:
若不存在,则基于所述第一资源锁和所述需求条件,确定所述调度指令对应的第二目标资源,并开启所述第二目标资源对应的第二资源锁;
将开启所述第二资源锁的所述第二目标资源返回所述终端。
优选地,所述检测模块还用于:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待确认调度器,并确定所述待确认调度器对应的调度锁是否开启;
若否,则将所述待确认调度器设置为目标调度器,并对所述目标调度器上锁。
此外,为实现上述目的,本发明还提供一种资源调度设备,所述资源调度设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的资源调度程序,所述资源调度程序被所述处理器执行时实现如上所述的资源调度方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有资源调度程序,所述资源调度程序被处理器执行时实现如上所述的资源调度方法的步骤。
本发明提出的资源调度方法,若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。本发明通过目标调度器的调度规则,以及调度指令的需求条件,调取对应的目标资源,实现针对性调度,提高调度的准确性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明资源调度方法第一实施例的流程示意图;
图3为本发明资源调度方法第一实施例配置界面示意图;
图4为本发明资源调度方法第一实施例配置界面中规则描述栏示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例设备可以是PC机或服务器设备。
如图1所示,该设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及资源调度程序。
其中,操作系统是管理和控制资源调度设备与软件资源的程序,支持网络通信模块、用户接口模块、资源调度程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1002;用户接口模块用于管理和控制用户接口1003。
在图1所示的资源调度设备中,所述资源调度设备通过处理器1001调用存储器1005中存储的资源调度程序,并执行下述资源调度方法各个实施例中的操作。
基于上述硬件结构,提出本发明资源调度方法实施例。
参照图2,图2为本发明资源调度方法第一实施例的流程示意图,所述方法包括:
步骤S10,若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;
步骤S20,读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;
步骤S30,在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
本实施例资源调度方法运用于理财机构或者银行等金融机构的资源调度设备中,资源调度设备可以是终端、机器人或者PC设备,为描述方便,资源调度设备以调度设备进行描述。调度设备支持物理机、虚拟母机、容器母机和虚拟IP等多种资源的调度分配,并预留有调用接口,可通过编程,扩展支持更多的资源,具体的,调度设备运行的调度系统通过RESTful API(一种软件架构风格接口)对外暴露,其他设备需要其调度功能时,通过调用该RESTful API即可。为响应其他设备的调度指令,调度设备中还包含有多个调度器,并且各调度器之间相互独立,互不干扰,当修改A调度器时,B调度器不会受到影响,调度设备通过调度器调取相应的调度资源来响应其他设备的调度指令,其中,调度器可编辑,可以根据用户的需求配置相应的调度规则,例如属性过滤规则和排序规则等。
本实施例的调度设备,若检测到调度指令,则通过对应的调度器,以及调度器中的调度规则,先筛选出对应的调度资源,在根据调度指令的需求条件,选取目标资源,最后,将目标资源的调度结果返回,以实现针对性调度,提高调度的准确性。
以下将对各个步骤进行详细说明:
步骤S10,若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器。
在本实施例中,调度设备对外暴露接口,用户可使用终端等设备通过该接口与调度设备连接,并向调度设备发起调度指令,需要说明的是,调度设备可支持多台终端同时进行调度。具体的,在用户的终端与调度设备连接后,终端的显示界面上显示对应的操作界面,用户可在操作界面中进行调度操作,如发起调度指令等,在实际操作时,用户只需输入调度指令即可,如用户根据业务的规模,估计需要两台服务器,这两台服务器是计划做成虚拟母机,并在其上生产出业务所需要的虚拟子机的。另外,假设用户希望在机架501-F01上调度这两台服务器,用户可通过接口发起包含两台用途为虚拟母机,机架编号为501-F01的服务器的调度指令就可以了,当然,在实际调度过程中,若调度资源池中存在满足调度指令的虚拟母机,则采用一个调度器即可完成调度;若是调度资源池中未存在满足调度指令的虚拟母机,如虚拟母机没有了,或者只有一台,那么需要先调用一个调度器去调取空白的服务器,将服务器做出虚拟母机,再启用另一个调度器去调取虚拟母机,也即,此时,整个调度过程需要两个调度器。
若调度设备检测到终端发起的调度指令,则读取调度指令的内容,通过调度指令的内容,确定调度指令的资源类型,如上所述例子,可确定调度指令的资源类型为虚拟母机。接着,基于调度指令的资源类型,确定调度指令对应的目标调度器,也即,在本实施例中,调度器以资源类型来分类,不同资源类型的调度指令对应不同的调度器,如上述例子,虚拟母机对应的调度器为虚拟母机调度器。
进一步地,步骤S10包括:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待配置调度器;
在该步骤中,若调度设备检测到终端发起的调度指令,则基于调度指令的资源类型确定调度指令对应的待配置调度器,需要说明的是,此时的待配置调度器中没有调度规则。
接收基于所述待配置调度器输入的所述调度规则,并基于所述调度规则对所述待配置调度器进行配置,以得到所述调度指令对应的目标调度器。
在该步骤中,调度设备在确定待配置调度器后,在终端显示界面显示对应的配置界面,用户可在配置界面对待配置调度器进行配置。
具体的,参照图3,在配置界面中显示多种规则,并且各规则的位置固定,用户只需点击相应的位置,选择要配置的规则,操作界面即可进一步显示规则属性描述栏,用户可在规则属性描述栏中输入需要的调度规则,如图4的机架对应的规则值,也称规则属性,用户可输入101等,输入完成后,点击保存,待配置调度器即配置完成。
可以理解的,目标调度器的规则有多种,一般都是搭配使用,也即在规则配置阶段,待配置调度器的可配置项有多项,用户在对其进行配置时,可以有选择的进行配置,在具体实施时,配置情况可分为三种,一种是用户不对当前可配置项进行配置,如图3中的多主机高可用规则,用户不对其进行配置,那么在配置完成后,目标调度器则没有该规则对应的调用功能;第二种是用户不对当前可配置项进行配置,在配置完成后,用户在发起调度指令时,随调度指令下发相应的规则属性,如机架对应的规则属性,在配置阶段,为空白,用户在调度时,随调度指令下发规则属性为101,那么目标调度器即去调取101机架的资源;第三种是用户不对当前可配置项进行配置,在配置完成后,目标调度器会以默认属性作为该可配置项的规则属性,如上述机架,若一开始的规则属性为空白,则目标调度器在调取资源时,会随机调取,也即默认属性为随机等。也即,在规则配置阶段,可以根据实际情况进行灵活设置。
步骤S20,读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源。
在本实施例中,每个调度器都配置有相应的调度规则,调度设备在确定了目标调度器之后,读取目标调度器的调度规则,根据调度规则,在调度资源池中筛选出对应的调度资源,其中,调度资源池指的是调度设备的数据库中储存的所有服务器信息,也即,调度设备在读取目标调度器的调度规则时,也从数据库中读取出所有的服务器信息,并以所有的服务器信息建立调度资源池,再根据调度规则,从调度资源池中筛选出对应的调度资源。
需要说明的是,调度规则可以是固定配置的,如虚拟母机调度器遵循A调度规则,容器母机遵循B调度规则等;也可以是可编辑的,即调度器是空白的,根据具体需要进行现场配置调度规则。
进一步地,步骤S20包括:
读取所述目标调度器的调度规则,所述调度规则包括属性过滤规则和排序规则;
在该步骤中,调度设备读取目标调度器的调度规则,其中,调度规则包括属性过滤规则和排序规则,也即,调度设备要确定目标调度器的属性过滤规则,以及对应的排序规则。
在所述目标调度器对应的调度资源池中选出所述属性过滤规则对应的调度资源,并按照所述排序规则,对所述调度资源进行排序。
接着,调度设备在调度资源池中,筛选出符合属性过滤规则对应的调度资源,然后,再根据排序规则,对筛选出来的调度资源进行排序,如,用户要求调度出2台CentOS的虚拟机,调度设备根据检测到的“CentOS”,调用对应的调度器根据该属性值匹配目前调度资源池中的调度资源,然后,再根据排序规则对调度资源进行排序,在具体实施时,以调度资源上架时间进行排序,最后,返回2台满足条件的虚拟机,具体可以是排序靠前的2台虚拟机,也可以是排序靠后的2台虚拟机。
步骤S30,在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
在本实施例中,在筛选出调度资源后,调度设备根据调度指令的需求条件,从调度资源中选取对应的第一目标资源,并将第一目标资源返回终端,以供终端的显示界面显示第一目标资源,其中,需求条件可以是调度数量,如上述例子,在筛选出调度资源并对调度资源进行排序后,调度设备根据调度数量“2台”,从调度资源中选取排序靠前的2台虚拟机作为第一目标资源,或者从调度资源中选取排序靠后的2台虚拟机作为第一目标资源等。
可以理解的,需求条件也可以是其他限制条件,如高可用规则,其中,高可用规则指指请求的虚拟机资源需要至少分布在两个机架上,此时的调度设备在选取第一目标资源时,还需确定第一目标资源是否至少分布在两个机架上,若是,才确定第一目标资源有效,若否,则第一目标资源无效,需要重新筛选。
需求条件还可以是亲和性规则,指两个终端申请的虚拟机资源允许分布在同一台虚拟母机上;反亲和规则,指两个终端申请的虚拟机资源不允许分布在同一台虚拟母机上;优先离散分布策略,指一个终端申请的多台虚拟机优先分布在多个机架上等。
需要说明的是,调度资源也可以循环从调度资源池中选取一个调度资源,并判断当前调度资源是否满足调度规则,若满足,则记录下来,并从调度资源池中剔除当前调度资源,然后继续选取一个调度资源进行判断,直至满足需求条件为止。
本实施例若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。本发明通过目标调度器的调度规则,以及调度指令的需求条件,调取对应的目标资源,实现针对性调度,提高调度的准确性。
进一步地,基于本发明资源调度方法第一实施例,提出本发明资源调度方法第二实施例。
资源调度方法的第二实施例与资源调度方法的第一实施例的区别在于,步骤S30包括:
步骤a,在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并开启所述第一目标资源对应的第一资源锁;
步骤b,将开启所述第一资源锁的所述第一目标资源返回所述终端。
本实施例为避免调度冲突,在确定了第一目标资源后,对第一目标资源加锁,使得其他终端的调度指令不会选取到第一目标资源,不会与当前终端的调度指令冲突,实现精准调度。
以下将对各个步骤进行详细说明:
步骤a,在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并开启所述第一目标资源对应的第一资源锁。
在本实施例中,调度设备在调度资源中选取满足调度指令的需求条件的第一目标资源后,开启第一目标资源对应的第一资源锁,在具体实施时,为防止其他终端的调度指令的目标也是第一目标资源,造成多线程对应同一个任务,因此,在调度设备确定到第一目标资源时,开启第一目标资源的第一资源锁,以对第一目标资源加锁,使得其他终端无法发现第一目标资源,也就不存在调度冲突了,其中,第一资源锁在具体实施时,以代码程序的形式存在,如Java提供了synchronized关键字来提供加锁支持,当调度器执行某个被synchronized关键字保护的代码片段的时候,它将先检查其是否加锁,如果没有,则加锁,在调度完成后,再释放锁,资源锁的目的在于确保当前确定的第一目标资源不会被其他终端调取,也即开启了资源锁的目标资源不会被其他调度器调取,避免调度冲突。
步骤b,将开启所述第一资源锁的所述第一目标资源返回所述终端。
在本实施例中,调度设备将开启了第一资源锁的第一目标返回终端显示,确保第一目标资源只有当前终端独享,而不会出现其他终端也要调取第一目标资源,造成调度冲突的情况。
进一步地,步骤b包括:
检测是否存在基于所述第一目标资源触发的确认指令;
在该步骤中,调度设备在将第一目标资源返回终端时,先将第一目标资源显示在终端的显示界面,以供用户确认是否是其想要的资源,可以理解的,虽然调度设备可根据用户的调度需求,选取到较为正确的调度资源,但不可否认,当前选定的第一目标资源有可能并不是用户想要的资源,因此在确定第一目标资源后,由用户通过confirm接口(确认接口)决定是否使用该结果。因此,调度设备需检测确认接口是否存在基于第一目标资源触发的确认指令。
若存在,则将开启所述第一资源锁的所述第一目标资源返回所述终端。
若调度设备检测到基于第一目标资源的确认指令,则此时才将开启第一资源锁的第一目标资源返回终端。
进一步地,为避免用户长时间无应答,在具体实施时,设置一个确认时间,如10分钟,即检测在预设确认时间内是否存在基于所述第一目标资源触发的确认指令,若存在,则将开启所述第一资源锁的所述第一目标资源返回所述终端。
进一步地,所述资源调度方法还包括:
若不存在,则基于所述第一资源锁和所述需求条件,确定所述调度指令对应的第二目标资源,并开启所述第二目标资源对应的第二资源锁;
在该步骤中,若调度设备确认不存在基于第一目标资源的确认指令,即当前返回的调度结果不是用户想要的,用户可选择放弃指令,或者在预设时间内未点击确认,则基于第一资源锁和需求条件,在调度资源中,选取调度指令对应的第二目标资源,并开启第二目标资源对应的第二资源锁,也即调度设备进行二次调度,但由于第一资源锁的存在,使得第二目标资源不会是第一目标资源,相当于在原先的调度资源中剔除了第一目标资源,再从中选取第二目标资源,使得调度更加精准。
将开启所述第二资源锁的所述第二目标资源返回所述终端。
同理,在确认第二目标资源是用户想要的资源时,将开启第二资源锁的第二目标资源返回终端。
进一步地,若在预设确认时间内未检测到基于第一目标资源的确认指令,则默认用户放弃该调度结果,则关闭第一目标资源的第一资源锁,以便其他终端的调度指令可以调取到第一目标资源。
本实施例为避免调度冲突,在确定了第一目标资源后,对第一目标资源加锁,使得其他终端的调度指令不会选取到第一目标资源,不会与当前终端的调度指令冲突,实现精准调度。
进一步地,基于本发明资源调度方法第一、第二实施例,提出本发明资源调度方法第三实施例。
资源调度方法的第三实施例与资源调度方法的第一、第二实施例的区别在于,步骤S10包括:
步骤c,若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待确认调度器,并确定所述待确认调度器对应的调度锁是否开启;
在该步骤中,若调度设备检测到终端发起的调度指令,则读取调度指令的内容,并根据内容确定调度指令的资源类型,再根据资源类型确定待确认调度器,并且还要确定待确认调度器对应的调度锁是否开启。
与上述实施例的资源锁不同的地方在于,调度锁可以被感知,调度设备可确定当前的待确认调度器是否上锁,若上锁,说明当前待确认调度器有其他终端在使用,即待确认调度器有任务在进行,则调度设备无法使用该待确认调度器为当前终端调度,此时,调度设备新建一个资源类型对应的目标调度器,以进行后续的调度任务。
步骤d,若否,则将所述待确认调度器设置为目标调度器,并对所述目标调度器上锁。
若确定待确认调度器对应的调度锁未开启,说明当前待确认调度器处于空闲,没有进行调度任务,调度设备则将待确认调度器设置为目标调度器,并对目标调度器上锁,以禁止其他终端调度,使调度任务保持对CPU的控制权。
具体的,在具体实施时,调度锁以调度器上锁函数和调度器解锁函数体现,具体过程为:对全局变量锁定嵌套计数器进行操作,嵌套计数器跟踪调度器上锁函数被调用的次数,允许嵌套深度达255层。调度器上锁即对变量嵌套计数器进行加1操作,开锁即对变量嵌套计数器进行减1操作,其中,调度器上锁函数和调度器解锁函数必须成对调用。
本实施例为确保调度任务不被中断,需要对执行调度的调度器进行上锁处理,因此,在确定调度器之前,需确定该调度器的调度锁是否开启,在确定调度锁没开启时,将其设置为目标调度器,并对其上锁,实现稳定调度。
本发明还提供一种资源调度装置。本发明资源调度装置包括:
检测模块,用于若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;
确定模块,用于读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;
返回模块,用于在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
进一步地,所述检测模块还用于:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待配置调度器;
接收基于所述待配置调度器输入的所述调度规则,并基于所述调度规则对所述待配置调度器进行配置,以得到所述调度指令对应的目标调度器。
进一步地,所述确定模块还用于:
读取所述目标调度器的调度规则,所述调度规则包括属性过滤规则和排序规则;
在所述目标调度器对应的调度资源池中选出所述属性过滤规则对应的调度资源,并按照所述排序规则,对所述调度资源进行排序。
进一步地,所述返回模块还用于:
在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并开启所述第一目标资源对应的第一资源锁;
将开启所述第一资源锁的所述第一目标资源返回所述终端。
进一步地,所述返回模块还用于:
检测是否存在基于所述第一目标资源触发的确认指令;
若存在,则将开启所述第一资源锁的所述第一目标资源返回所述终端。
进一步地,所述返回模块还用于:
若不存在,则基于所述第一资源锁和所述需求条件,确定所述调度指令对应的第二目标资源,并开启所述第二目标资源对应的第二资源锁;
将开启所述第二资源锁的所述第二目标资源返回所述终端。
进一步地,所述检测模块还用于:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待确认调度器,并确定所述待确认调度器对应的调度锁是否开启;
若否,则将所述待确认调度器设置为目标调度器,并对所述目标调度器上锁。
本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有资源调度程序,所述资源调度程序被处理器执行时实现如上所述的资源调度方法的步骤。
其中,在所述处理器上运行的资源调度程序被执行时所实现的方法可参照本发明资源调度方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书与附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种资源调度方法,其特征在于,所述资源调度方法包括如下步骤:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;
读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;
在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
2.如权利要求1所述的资源调度方法,其特征在于,所述若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器的步骤包括:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待配置调度器;
接收基于所述待配置调度器输入的所述调度规则,并基于所述调度规则对所述待配置调度器进行配置,以得到所述调度指令对应的目标调度器。
3.如权利要求1所述的资源调度方法,其特征在于,所述读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源的步骤包括:
读取所述目标调度器的调度规则,所述调度规则包括属性过滤规则和排序规则;
在所述目标调度器对应的调度资源池中选出所述属性过滤规则对应的调度资源,并按照所述排序规则,对所述调度资源进行排序。
4.如权利要求1所述的资源调度方法,其特征在于,所述在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端的步骤包括:
在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并开启所述第一目标资源对应的第一资源锁;
将开启所述第一资源锁的所述第一目标资源返回所述终端。
5.如权利要求4所述的资源调度方法,其特征在于,所述将开启所述第一资源锁的所述第一目标资源返回所述终端的步骤包括:
检测是否存在基于所述第一目标资源触发的确认指令;
若存在,则将开启所述第一资源锁的所述第一目标资源返回所述终端。
6.如权利要求5所述的资源调度方法,其特征在于,所述检测是否存在基于所述第一目标资源触发的确认指令的步骤之后,所述资源调度方法还包括:
若不存在,则基于所述第一资源锁和所述需求条件,确定所述调度指令对应的第二目标资源,并开启所述第二目标资源对应的第二资源锁;
将开启所述第二资源锁的所述第二目标资源返回所述终端。
7.如权利要求1-6任一项所述的资源调度方法,其特征在于,所述若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器的步骤包括:
若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的待确认调度器,并确定所述待确认调度器对应的调度锁是否开启;
若否,则将所述待确认调度器设置为目标调度器,并对所述目标调度器上锁。
8.一种资源调度装置,其特征在于,所述资源调度装置包括:
检测模块,用于若检测到终端发起的调度指令,则基于所述调度指令的资源类型,确定所述调度指令对应的目标调度器;
确定模块,用于读取所述目标调度器的调度规则,并从所述目标调度器对应的调度资源池中,确定所述调度规则对应的调度资源;
返回模块,用于在所述调度资源中,选取满足所述调度指令的需求条件对应的第一目标资源,并将所述第一目标资源返回所述终端。
9.一种资源调度设备,其特征在于,所述资源调度设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的资源调度程序,所述资源调度程序被所述处理器执行时实现如权利要求1至7中任一项所述的资源调度方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有资源调度程序,所述资源调度程序被处理器执行时实现如权利要求1至7中任一项所述的资源调度方法的步骤。
CN201910845565.2A 2019-09-06 2019-09-06 资源调度方法、装置、设备与计算机可读存储介质 Pending CN110443529A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910845565.2A CN110443529A (zh) 2019-09-06 2019-09-06 资源调度方法、装置、设备与计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910845565.2A CN110443529A (zh) 2019-09-06 2019-09-06 资源调度方法、装置、设备与计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN110443529A true CN110443529A (zh) 2019-11-12

Family

ID=68439644

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910845565.2A Pending CN110443529A (zh) 2019-09-06 2019-09-06 资源调度方法、装置、设备与计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110443529A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112261115A (zh) * 2020-10-19 2021-01-22 北京字节跳动网络技术有限公司 一种资源分配的方法、装置及计算机存储介质
CN114091962A (zh) * 2021-11-30 2022-02-25 中国建设银行股份有限公司 资源调度管理方法、装置、电子设备及存储介质
WO2022161359A1 (zh) * 2021-01-27 2022-08-04 支付宝(杭州)信息技术有限公司 目标对象处理的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026511A (zh) * 2007-03-27 2007-08-29 华为技术有限公司 测试方法、系统及其配置方法和系统
CN103516758A (zh) * 2012-06-28 2014-01-15 中兴通讯股份有限公司 资源路由、呼叫中心坐席的业务请求处理方法及装置
CN103533086A (zh) * 2013-10-31 2014-01-22 中国科学院计算机网络信息中心 一种云计算系统中的资源统一调度方法
CN109934507A (zh) * 2019-03-21 2019-06-25 网宿科技股份有限公司 一种业务流程调度的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026511A (zh) * 2007-03-27 2007-08-29 华为技术有限公司 测试方法、系统及其配置方法和系统
CN103516758A (zh) * 2012-06-28 2014-01-15 中兴通讯股份有限公司 资源路由、呼叫中心坐席的业务请求处理方法及装置
CN103533086A (zh) * 2013-10-31 2014-01-22 中国科学院计算机网络信息中心 一种云计算系统中的资源统一调度方法
CN109934507A (zh) * 2019-03-21 2019-06-25 网宿科技股份有限公司 一种业务流程调度的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112261115A (zh) * 2020-10-19 2021-01-22 北京字节跳动网络技术有限公司 一种资源分配的方法、装置及计算机存储介质
CN112261115B (zh) * 2020-10-19 2023-02-07 北京字节跳动网络技术有限公司 一种资源分配的方法、装置及计算机存储介质
WO2022161359A1 (zh) * 2021-01-27 2022-08-04 支付宝(杭州)信息技术有限公司 目标对象处理的方法及装置
CN114091962A (zh) * 2021-11-30 2022-02-25 中国建设银行股份有限公司 资源调度管理方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN110443529A (zh) 资源调度方法、装置、设备与计算机可读存储介质
US10599115B2 (en) Unified building management system with space use case profiles
US20060015479A1 (en) Contextual navigation and action stacking
CN106598705A (zh) 一种异步任务的调度方法、装置、系统以及电子设备
CN101714230A (zh) 一种用户自定义的工作流管理方法及系统
US11706161B2 (en) Building system with space use case operation
CN102662740B (zh) 非对称多核系统及其实现方法
CN101201753A (zh) 一种多状态机管理引擎的配置管理方法
WO1997000490A1 (en) Strategy driven planning system and method of operation
CN108182108A (zh) 一种定时任务集群及其执行方法
CN103645950A (zh) 一种计算机的加速方法和装置
CN108804484A (zh) 数据审批方法、设备和计算机可读存储介质
Waters et al. Improving domain-independent intention selection in BDI systems
CN110347427A (zh) 网页代码的优化方法及装置
CN111953503B (zh) Nfv资源部署编排方法和网络功能虚拟化编排器
CN106874079A (zh) 一种任务执行的方法及装置
CN115840745A (zh) 基于动态表单的调度方法、装置、计算机设备及存储介质
US8539479B2 (en) System and method for application function consolidation
EP1785922A1 (en) A system for automatically reassigning an order confirmation in response to an incoming order, a computer implemented method, a user terminal and a computer readable storage medium
CN106201490A (zh) 一种优化应用程序运行的方法及装置
CN109214957A (zh) 多人自同步点餐方法、系统、服务器及存储介质
CN103186384A (zh) 一种面向业务组件的软件设计分析系统及其使用方法
CN101502042A (zh) 用户账户内应用程序专用数据的隔离
US8396762B2 (en) Systems and methods for validating subsititution chains of an order
CN109976883A (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: 20191112