CN110489222A - 任务调度方法、***、集群服务器及可读存储介质 - Google Patents
任务调度方法、***、集群服务器及可读存储介质 Download PDFInfo
- Publication number
- CN110489222A CN110489222A CN201910787447.0A CN201910787447A CN110489222A CN 110489222 A CN110489222 A CN 110489222A CN 201910787447 A CN201910787447 A CN 201910787447A CN 110489222 A CN110489222 A CN 110489222A
- Authority
- CN
- China
- Prior art keywords
- task
- scheduling
- scheduler
- mark
- target dispatch
- 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
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000013507 mapping Methods 0.000 claims abstract description 37
- 238000012423 maintenance Methods 0.000 claims description 11
- 238000012986 modification Methods 0.000 claims description 8
- 230000004048 modification Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000009102 absorption Effects 0.000 description 1
- 238000010521 absorption reaction Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008016 vaporization Effects 0.000 description 1
- 238000009834 vaporization 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种任务调度方法、***、集群服务器及可读存储介质,方法包括:逐个访问任务数据库内的调度任务;根据访问的调度任务,判断用于标识调度任务的调度字段是否为预设空闲标识;若调度字段为预设空闲标识时,则将调度字段更新为与当前服务器关联的占用标识;加载并执行与占用标识相映射的目标调度任务。这样,若当前服务器宕机了,且仍存在着未执行的目标调度任务时,则在当前服务器重启之后,可以根据占用标识重新获取未执行的目标调度任务,并继续执行。在本实施例的技术方案中,无需人工进行查询在当前服务器宕机之前丢失的未执行的目标调度任务,从而提升了***的稳定性。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务调度方法、***、集群服务器及可读存储介质。
背景技术
随着计算机技术和互联网技术的迅速发展,用户可以很容易地接入互联网,并向互联网上的服务器提交任务,则服务器可以通过执行用户提交的任务,为用户提供相应的服务。在实际应用中,当用户数量十分庞大时,由于单台机器构成的服务器已经不能够满足大量数据的处理任务。因此利用多台机器组成的分布式***成为当今主流的解决方案。但在分布式***中会导致并发调度导致的任务被重复处理问题。
目前,为解决这一问题引入了第三方***(Redis)通过分布式锁来解决。但在应用分布式锁的过程中,可能存在服务器对调度任务进行加锁时,服务器宕机了,则被该服务器加锁的调度任务会丢失,需要后续通过人工进行查询该服务器宕机之前丢失的调度任务,导致***稳定性差的问题。
发明内容
本发明的主要目的在于提供一种任务调度方法、***、集群服务器及可读存储介质,旨在解决在分布式***中引用分布式锁会导致***稳定性差的技术问题。
为实现上述目的,本发明提供一种任务调度方法,所述任务调度方法包括:
逐个访问任务数据库内的调度任务;
根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载并执行与所述占用标识相映射的目标调度任务。
进一步地,所述根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识的步骤之后,包括:
若所述调度字段为所述预设空闲标识时,则将访问的所述调度任务的访问权限更新为仅被所述当前服务器访问。
进一步地,所述加载并执行与所述占用标识相映射的目标调度任务的步骤之后,包括:
将所述目标调度任务执行完之后,解除所述占用标识与所述目标调度任务的映射关系;
将解除了所述映射关系的所述目标调度任务开放访问权限。
进一步地,所述将解除了所述映射关系的目标调度任务开放访问权限的步骤之后,包括:
将解除所述映射关系之后的所述目标调度任务的调度字段赋值为所述预设空闲标识。
进一步地,所述逐个访问任务数据库内的调度任务的步骤之前,包括:
根据所述任务数据库对所述调度任务进行维护管理,所述维护管理包括:查询所述调度任务、增加所述调度任务、删除所述调度任务或修改所述调度任务;
将所述任务数据库内的每一个所述调度任务的调度字段赋值为所述预设空闲标识。
进一步地,所述逐个访问任务数据库内的调度任务的步骤,包括:
逐个访问所述任务数据库内的调度任务列表,并访问不超过预设个数位于所述调度任务列表内的所述调度任务。
进一步地,所述加载并执行与所述占用标识相映射的目标调度任务的步骤,包括:
调用与所述占用标识所映射的所述目标调度任务至缓存区;
判断所述缓存区是否存储有所述目标调度任务;
若所述缓存区存储有所述目标调度任务,则执行所述目标调度任务。
本发明还提供一种任务调度***,所述任务调度***包括:
访问模块,用于逐个访问任务数据库内的调度任务;
判断模块,用于根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
更新模块,用于若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载模块,用于加载并执行与所述占用标识相映射的目标调度任务
本发明还提供一种集群服务器,所述集群服务器包括一个或多个服务器,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的任务调度程序,所述任务调度程序被所述处理器执行时实现如上述中的任务调度方法的步骤。
本发明还提供一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的任务调度方法的步骤。
本发明实施例提出的任务调度方法,通过当前服务器逐个访问任务数据库内的调度任务,根据访问的调度任务,判断用于标识调度任务的调度字段是否为预设空闲标识,若调度字段为预设空闲标识时,则将调度字段更新为与当前服务器关联的占用标识,当前服务器加载并执行与占用标识相映射的目标调度任务。这样,若当前服务器宕机了,且仍存在着未执行的目标调度任务时,则在当前服务器重启之后,可以根据占用标识重新获取未执行的目标调度任务,并继续执行。在本实施例的技术方案中,无需人工进行查询在当前服务器宕机之前丢失的未执行的目标调度任务,从而提升了***的稳定性。
附图说明
图1是本发明实施例方案涉及的硬件运行的单个服务器的结构示意图;
图2是本发明一种任务调度方法第一实施例的流程示意图;
图3是本发明实施例提供的多个服务器访问任务数据库的场景示意图;
图4是本发明一种任务调度***一实施例的框架结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的单个服务器的结构示意图。
本发明实施例单个服务器设备可以是电脑,也可以是智能手机。
如图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中可以包括操作***、网络通信模块、用户接口模块以及任务调度的处理程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的任务调度程序,并执行以下操作:
逐个访问任务数据库内的调度任务;
根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载并执行与所述占用标识相映射的目标调度任务。
进一步地,处理器1001可以调用存储器1005中存储的任务调度程序,还执行以下操作:若所述调度字段为所述预设空闲标识时,则将访问的所述调度任务的访问权限更新为仅被所述当前服务器访问。
进一步地,处理器1001可以调用存储器1005中存储的任务调度程序,还执行以下操作:将所述目标调度任务执行完之后,解除所述占用标识与所述目标调度任务的映射关系;
将解除了所述映射关系的所述目标调度任务开放访问权限。
进一步地,处理器1001可以调用存储器1005中存储的任务调度程序,还执行以下操作:将解除所述映射关系之后的所述目标调度任务的调度字段赋值为所述预设空闲标识。
进一步地,处理器1001可以调用存储器1005中存储的任务调度程序,还执行以下操作:根据所述任务数据库对所述调度任务进行维护管理,所述维护管理包括:查询所述调度任务、增加所述调度任务、删除所述调度任务或修改所述调度任务;
将所述任务数据库内的每一个所述调度任务的调度字段赋值为所述预设空闲标识。
进一步地,逐个访问所述任务数据库内的调度任务列表,并访问不超过预设个数位于所述调度任务列表内的所述调度任务。
进一步地,调用与所述占用标识所映射的所述目标调度任务至缓存区;
判断所述缓存区是否存储有所述目标调度任务;
若所述缓存区存储有所述目标调度任务,则执行所述目标调度任务。
基于上述硬件结构,提出本发明任务调度方法的各实施例。
请参照图2,在本发明任务调度方法第一实施例中,该任务调度方法包括:
步骤S10,逐个访问任务数据库内的调度任务;
当前服务器逐个访问任务数据库内的调度任务。
在本实施例中,所述任务调度方法应用于集群服务器,集群服务器包括一个或多个服务器,当集群服务器内的其中一个服务器正在访问任务数据库时,则该服务器为当前服务器。
任务数据库可以设置在当前服务器,或设置于集群服务器内的其他服务器。在另一些实施例中,如图3所示,该任务数据库还可以是独立于集群服务器的数据库服务器,并且集群服务器可对该数据库服务器进行数据访问。
该任务数据库是数据共享的数据库,其中该任务数据库中存储有调度任务。例如,当任务数据库设置于当前服务器时,集群服务器内的其他服务器可对位于当前服务器的任务数据库进行数据访问,其中的数据访问指的是对任务数据库进行访问,包括查询调度任务、增加调度任务、删除调度任务或修改调度任务。
步骤S20,根据访问的调度任务,判断用于标识调度任务的调度字段是否为预设空闲标识;
当前服务器根据访问的调度任务,判断用于标识调度任务的调度字段是否为预设空闲标识。其中,调度字段是用于标识该调度任务的其中一个字段属性,例如,该调度字段是数字和/或字母组成的字符串。空闲标识可以是空字符串或者非空字符串。在本实施例中,当空闲标识为空字符串时,则表示调度任务是处于空闲状态,即处于待调度状态;当空闲标识为非空字符串时,则表示该调度任务是处于占用状态,即处于被一个服务器调用并占有的状态。
例如,在任务数据库内新增一个调度任务时,会对该调度任务的调度字段进行赋值,可选地,调度字段的默认值为一个空字符串:“0”。可以理解地是,调度字段还可以赋值为非空字符串。例如,若当前服务器正在访问任务数据库内的一个调度任务时,判断该调度任务的调度字段是否为预设空闲标识。在本实施例中,该预设空闲标识为空字符串:“0”。
步骤S30,若调度字段为预设空闲标识时,则将调度字段更新为与当前服务器关联的占用标识;
若调度字段为预设空闲标识时,则将调度字段更新为与当前服务器关联的占用标识,若调度字段不为预设空闲标识,则不能将该调度字段更新为与当前服务器关联的占用标识。其中,占用标识指的是与当前服务器相关联的标识,占用标识可以为数字和/或字母组成的字符串。在本实施例中,占用标识是当前服务器的IP地址,其中该IP地址指的是用于标识集群服务器中的当前服务器。
在本实施例中,若当前服务器访问的一个调度字段是预设空闲标识,即是一个空字符串时,则将该调度字段更新设置为当前服务器的IP地址。否则,当前服务器继续访问下一个调度任务,并重新执行步骤S20。
步骤S40,加载并执行与占用标识相映射的目标调度任务。
当前服务器可以加载并执行与占用标识相映射的一个或者多个目标调度任务。在本实施例中,当前服务器包括至少两个线程,两个线程可并行处理。例如,当前服务器包括第一线程和第二线程,第一线程基于与当前服务器相关联的占用标识,从任务数据库中查询并获取一个或多个目标调度任务,并将一个或多个目标调度排列为任务队列的前端,在后访问的位于任务队列的尾端。第二线程则将任务队列内的目标调度任务逐个加载并执行,即位于任务队列前端的调度任务优先被加载执行。
在本实施例中,通过当前服务器逐个访问任务数据库内的调度任务,根据访问的调度任务,判断用于标识调度任务的调度字段是否为预设空闲标识,若调度字段为预设空闲标识时,则将调度字段更新为与当前服务器关联的占用标识,当前服务器获取并执行与占用标识所映射的目标调度任务。这样,若当前服务器宕机了,且仍存在着未执行的目标调度任务时,则在当前服务器重启之后,可以根据占用标识重新获取未执行的目标调度任务,并继续执行。在本实施例的技术方案中,无需人工进行查询在当前服务器宕机之前丢失的未执行的目标调度任务,从而提升了***的稳定性。
进一步地,上述第一实施例的步骤S10中,逐个访问任务数据库内的调度任务的步骤,包括:
步骤S11,访问任务数据库内的调度任务列表,并逐个访问不超过预设个数的调度任务。
调度任务列表指的是由于多个调度任务构成的数据表,基于该数据表可以对存储于该数据表内的调度任务进行查询访问。
在本实施例中,当前服务器可以访问调度任务列表,进而查询访问存储于该调度任务列表内的调度任务。当前服务器逐个访问不超过预设个数的调度任务,例如,当前服务器逐个访问不超过10个调度任务。在本实施例中,根据当前服务器的处理能力,限制当前服务器访问调度任务的个数上限,从而最大化地利用当前服务器的资源,避免导致加载任务负荷过大,或执行任务不足等现象。同时,在当前服务器宕机之后,未执行的目标调度任务仍需要被加载并执行处理,因此,限制当前服务器访问调度任务的个数上限,能有效地阻止当前服务器加载任务负荷过大导致再次宕机等现象。
进一步地,上述第一实施例的步骤S40中,加载并执行与占用标识相映射的目标调度任务的步骤,包括:
步骤S41,调用与占用标识所映射的目标调度任务至缓存区;
步骤S42,判断缓存区是否存储有目标调度任务;
步骤S43,若缓存区存储有目标调度任务,则执行目标调度任务。
在本实施例中,当前服务器可以基于占用标识,加载调用与占用标识相映射的目标数调度任务至缓存区,该缓存区是位于当前服务器的存储器中,且可以查询缓存区是否有存储记录。当缓存区有存储记录,即缓存区存储有目标调度任务时,则服务器执行目标调度任务;当缓存区没有存储记录,即缓存区没有存储目标调度任务时,则当前服务器继续执行步骤S41。
当前服务器基于占用标识将目标调度任务加载至缓存区,并对该目标调度任务进行执行,从而避免当前服务器直接对任务数据库内的数据进行修改,从而避免造成破坏等风险,增强了数据在共享过程中的稳定性。
在本发明任务调度任务方法的第二实施例中,在所述逐个访问任务数据库内的调度任务的步骤之前,包括:
步骤A,根据任务数据库对调度任务进行维护管理,维护管理包括:查询调度任务、增加调度任务、删除调度任务或修改调度任务;
步骤B,将任务数据库内的每一个调度任务的调度字段为预设空闲字段。
当前服务器根据任务数据库对调度任务进行增加调度任务、删除调度任务或修改调度任务,将任务数据库内的每一个调度任务的调度字段为预设空闲字段。
在本实施例中,通过任务数据库对调度任务进行维护管理,该维护管理包括有查询调度任务、增加调度任务、删除调度任务或修改调度任务。其中,该调度任务包括有调度字段的字段属性,若当前服务器对其中一个调度任务进行访问时,则该当前服务器可以将该调度任务的调度字段进行赋值,例如将该调度任务的调度字段赋值为预设空闲标识。当前服务器对调度任务的调度字段进行赋值,相当于初始化调度任务的状态,即相当于将调度任务调整为待调度状态。
在本发明任务调度任务方法的第三实施例中,在所述根据访问的调度任务,判断用于标识调度任务的调度字段是否为预设空闲标识的步骤之后,包括:
步骤S21,若调度字段为预设空闲标识时,则将访问的调度任务的访问权限更新为仅被当前服务器访问。
在本实施例中,当前服务器访问任务数据库内的调度任务,若调度字段为预设空闲标识时,则将访问的调度任务的访问权限更新为仅被当前服务器访问。也就是说,在判断出调度任务是处于待调度的状态之后,将调度任务的访问权限锁住,该调度任务仅可被当前服务器进行访问并执行,从而避免其他服务器对该调度任务进行访问并执行,还降低了丢失未执行目标调度任务的风险,从而提高***的稳定性。
进一步地,在加载并执行与所述占用标识相映射的目标调度任务的步骤之后,包括:
将所述目标调度任务执行完之后,解除所述占用标识与所述目标调度任务的映射关系;
将解除了所述映射关系的所述目标调度任务开放访问权限。
在本实施例中,若当前服务器将目标调度任务执行完了之后,解除占用标识与目标调度任务的映射关系,从而相当于将目标调度任务进行释放,被解除了映射关系的目标调度任务可以在下一次调度过程中再次被调度,且其他服务器可对其进行调度。
进一步地,当所述目标调度任务的访问权限被更新为仅被当前服务器访问时,只有将目标调度任务的访问权限开放之后,其他的服务器才可对该目标调度任务进行访问、调度或执行。
在本实施例中,调度任务仅被当前服务器进行访问并执行,降低了丢失未执行目标调度任务的风险,从而提高***的稳定性。另外地,目标调度任务被执行之后,才将目标调度任务的访问权限开放,从而保障目标调度任务仅被当前服务器访问并执行。
进一步地,在将解除了所述映射关系的所述目标调度任务开放访问权限的步骤之后,包括:
将解除映射关系之后的目标调度任务的调度字段赋值为预设空闲标识。
在本实施例中,当前服务器将解除映射关系之后的目标调度任务的调度字段赋值为预设空闲标识。也就是说,当前服务器访问并执行了目标调度任务之后,将目标调度任务更新为待调度状态,从而释放目标调度任务,并可使得目标调度任务在下一次调度的过程中还可以被当前服务器调度,也可以被其他服务器进行调度。
在一个实施例中,如图4所示,图4是本发明一种任务调度***50一实施例的框架结构示意图,包括:访问模块51、判断模块52、更新模块53以及加载模块54,其中:
访问模块51,用于逐个访问任务数据库内的调度任务;
判断模块52,用于根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
更新模块53,用于若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载模块54,用于加载并执行与所述占用标识相映射的目标调度任务。
关于任务调度***的具体限定可以参见上文中对于任务调度方法的限定,在此不再赘述。上述任务调度***中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
此外,本发明实施例还提出一种可读存储介质(即计算机可读存储器),所述可读存储介质上存储有任务调度程序,所述任务调度程序被处理器执行时实现如下操作:
逐个访问任务数据库内的调度任务;
根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载并执行与所述占用标识相映射的目标调度任务。
进一步地,所述任务调度程序被处理器执行时还实现如下操作:若所述调度字段为所述预设空闲标识时,则将访问的所述调度任务的访问权限更新为仅被所述当前服务器访问。
进一步地,所述任务调度程序被处理器执行时还实现如下操作:将所述目标调度任务执行完之后,解除所述占用标识与所述目标调度任务的映射关系;
将解除了所述映射关系的所述目标调度任务开放访问权限。
进一步地,所述任务调度程序被处理器执行时还实现如下操作:将解除所述映射关系之后的所述目标调度任务的调度字段赋值为所述预设空闲标识
进一步地,所述任务调度程序被处理器执行时还实现如下操作:根据所述任务数据库对所述调度任务进行维护管理,所述维护管理包括:查询所述调度任务、增加所述调度任务、删除所述调度任务或修改所述调度任务;
将所述任务数据库内的每一个所述调度任务的调度字段赋值为所述预设空闲标识。
进一步地,逐个访问所述任务数据库内的调度任务列表,并访问不超过预设个数位于所述调度任务列表内的所述调度任务。
进一步地,调用与所述占用标识所映射的所述目标调度任务至缓存区;
判断所述缓存区是否存储有所述目标调度任务;
若所述缓存区存储有所述目标调度任务,则执行所述目标调度任务。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种任务调度方法,其特征在于,所述任务调度方法包括:
逐个访问任务数据库内的调度任务;
根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载并执行与所述占用标识相映射的目标调度任务。
2.如权利要求1所述的任务调度方法,其特征在于,所述根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识的步骤之后,包括:
若所述调度字段为所述预设空闲标识时,则将访问的所述调度任务的访问权限更新为仅被所述当前服务器访问。
3.如权利要求2所述的任务调度方法,其特征在于,所述加载并执行与所述占用标识相映射的目标调度任务的步骤之后,包括:
将所述目标调度任务执行完之后,解除所述占用标识与所述目标调度任务的映射关系;
将解除了所述映射关系的所述目标调度任务开放访问权限。
4.如权利要求3所述的任务调度方法,其特征在于,所述将解除了所述映射关系的目标调度任务开放访问权限的步骤之后,包括:
将解除所述映射关系之后的所述目标调度任务的调度字段赋值为所述预设空闲标识。
5.如权利要求1所述的任务调度方法,其特征在于,所述逐个访问任务数据库内的调度任务的步骤之前,包括:
根据所述任务数据库对所述调度任务进行维护管理,所述维护管理包括:查询所述调度任务、增加所述调度任务、删除所述调度任务或修改所述调度任务;
将所述任务数据库内的每一个所述调度任务的调度字段赋值为所述预设空闲标识。
6.如权利要求1所述的任务调度方法,其特征在于,所述逐个访问任务数据库内的调度任务的步骤,包括:
逐个访问所述任务数据库内的调度任务列表,并访问不超过预设个数位于所述调度任务列表内的所述调度任务。
7.如权利要求1所述的任务调度方法,其特征在于,所述加载并执行与所述占用标识相映射的目标调度任务的步骤,包括:
调用与所述占用标识所映射的所述目标调度任务至缓存区;
判断所述缓存区是否存储有所述目标调度任务;
若所述缓存区存储有所述目标调度任务,则执行所述目标调度任务。
8.一种任务调度***,其特征在于,所述任务调度***包括:
访问模块,用于逐个访问任务数据库内的调度任务;
判断模块,用于根据访问的所述调度任务,判断用于标识所述调度任务的调度字段是否为预设空闲标识;
更新模块,用于若所述调度字段为所述预设空闲标识时,则将所述调度字段更新为与所述当前服务器关联的占用标识;
加载模块,用于加载并执行与所述占用标识相映射的目标调度任务。
9.一种集群服务器,其特征在于,所述集群服务器包括一个或多个服务器,所述服务器包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的任务调度程序,所述任务调度程序被所述处理器执行时实现如权利要求1至7中任一项所述的任务调度方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的任务调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910787447.0A CN110489222A (zh) | 2019-08-22 | 2019-08-22 | 任务调度方法、***、集群服务器及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910787447.0A CN110489222A (zh) | 2019-08-22 | 2019-08-22 | 任务调度方法、***、集群服务器及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110489222A true CN110489222A (zh) | 2019-11-22 |
Family
ID=68553853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910787447.0A Pending CN110489222A (zh) | 2019-08-22 | 2019-08-22 | 任务调度方法、***、集群服务器及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110489222A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309469A (zh) * | 2020-02-27 | 2020-06-19 | 紫光云技术有限公司 | 一种对数据请求进行统一管理调度的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100146516A1 (en) * | 2007-01-30 | 2010-06-10 | Alibaba Group Holding Limited | Distributed Task System and Distributed Task Management Method |
CN101753608A (zh) * | 2008-12-09 | 2010-06-23 | ***通信集团公司 | 分布式***的调度方法及*** |
CN105933135A (zh) * | 2015-11-16 | 2016-09-07 | ***股份有限公司 | 一种确定执行调度任务的方法及执行调度任务的第一主机 |
CN107688496A (zh) * | 2017-07-24 | 2018-02-13 | 上海壹账通金融科技有限公司 | 任务分布式处理方法、装置、存储介质和服务器 |
WO2018036167A1 (zh) * | 2016-08-22 | 2018-03-01 | 平安科技(深圳)有限公司 | 测试任务执行机分配方法、装置、服务器和存储介质 |
CN107957903A (zh) * | 2017-11-13 | 2018-04-24 | 中国平安财产保险股份有限公司 | 异步任务调度方法、服务器及存储介质 |
-
2019
- 2019-08-22 CN CN201910787447.0A patent/CN110489222A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100146516A1 (en) * | 2007-01-30 | 2010-06-10 | Alibaba Group Holding Limited | Distributed Task System and Distributed Task Management Method |
CN101753608A (zh) * | 2008-12-09 | 2010-06-23 | ***通信集团公司 | 分布式***的调度方法及*** |
CN105933135A (zh) * | 2015-11-16 | 2016-09-07 | ***股份有限公司 | 一种确定执行调度任务的方法及执行调度任务的第一主机 |
WO2018036167A1 (zh) * | 2016-08-22 | 2018-03-01 | 平安科技(深圳)有限公司 | 测试任务执行机分配方法、装置、服务器和存储介质 |
CN107688496A (zh) * | 2017-07-24 | 2018-02-13 | 上海壹账通金融科技有限公司 | 任务分布式处理方法、装置、存储介质和服务器 |
CN107957903A (zh) * | 2017-11-13 | 2018-04-24 | 中国平安财产保险股份有限公司 | 异步任务调度方法、服务器及存储介质 |
Non-Patent Citations (1)
Title |
---|
李磊: "ETL任务集群调度方法", 《计算机技术与发展》, no. 11, 29 June 2018 (2018-06-29), pages 41 - 44 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309469A (zh) * | 2020-02-27 | 2020-06-19 | 紫光云技术有限公司 | 一种对数据请求进行统一管理调度的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7730488B2 (en) | Computer resource management method in distributed processing system | |
US9430388B2 (en) | Scheduler, multi-core processor system, and scheduling method | |
CN111913955A (zh) | 数据的排序处理装置、方法和存储介质 | |
CN110221901A (zh) | 容器资源创建方法、装置、设备及计算机可读存储介质 | |
CN113918270A (zh) | 基于Kubernetes的云资源调度方法及*** | |
CN106250226B (zh) | 基于一致性哈希算法的任务调度方法及*** | |
US11146654B2 (en) | Multitier cache framework | |
CN105608162B (zh) | 文件处理方法和装置 | |
CN110362409A (zh) | 基于多种类型的资源分配方法、装置、设备及存储介质 | |
CN109981702B (zh) | 一种文件存储方法及*** | |
CN108509280B (zh) | 一种基于推送模型的分布式计算集群本地性调度方法 | |
CN112052068A (zh) | 一种Kubernetes容器平台CPU绑核的方法与装置 | |
CN116560860B (zh) | 一种基于机器学习的资源优先级的实时优化调整方法 | |
US9672231B2 (en) | Concurrent access for hierarchical data storage | |
CN110231977A (zh) | 数据库的处理方法、装置、存储介质及电子装置 | |
CN110838987B (zh) | 队列限流方法、存储介质 | |
CN116136783A (zh) | 多加速器框架中的高效加速器卸载 | |
CN110489222A (zh) | 任务调度方法、***、集群服务器及可读存储介质 | |
CN113448701A (zh) | 一种多进程外呼控制方法、***、电子设备及存储介质 | |
US8578383B2 (en) | Intelligent pre-started job affinity for non-uniform memory access computer system | |
CN110716814B (zh) | 一种进程间大数据量通讯的性能优化方法和装置 | |
CN113961586A (zh) | 一种sql语句的控制方法及装置 | |
CN107273188B (zh) | 一种虚拟机中央处理单元cpu绑定方法及装置 | |
CN111259375A (zh) | 应用于物联网操作***的访问请求的处理方法及装置 | |
CN111240830A (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 |