CN101408852B - 一种调度任务的方法、装置和系统 - Google Patents

一种调度任务的方法、装置和系统 Download PDF

Info

Publication number
CN101408852B
CN101408852B CN2008101784383A CN200810178438A CN101408852B CN 101408852 B CN101408852 B CN 101408852B CN 2008101784383 A CN2008101784383 A CN 2008101784383A CN 200810178438 A CN200810178438 A CN 200810178438A CN 101408852 B CN101408852 B CN 101408852B
Authority
CN
China
Prior art keywords
task
server
data
authority
carry out
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
Application number
CN2008101784383A
Other languages
English (en)
Other versions
CN101408852A (zh
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.)
Advanced New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN2008101784383A priority Critical patent/CN101408852B/zh
Publication of CN101408852A publication Critical patent/CN101408852A/zh
Priority to HK09109002.8A priority patent/HK1129249A1/xx
Application granted granted Critical
Publication of CN101408852B publication Critical patent/CN101408852B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种调度任务的方法、装置和系统,用以解决现有技术中在将任务调度到指定任务服务器时必须关闭其他任务服务器从而降低系统处理能力的不足之处。实施例阐述的方法应用于包含两台以上任务服务器的应用系统,在数据库服务器中保存各任务的数据并保存任务与有权限执行该任务的任务服务器的对应关系;任务服务器根据所述对应关系执行自身有权限执行的任务。实施例还公开了基于上述方法的装置与系统。本发明通过引入权限机制,对每项任务规定了有权限执行该任务的任务服务器,从而确保任务能够被调度到指定的任务服务器并且无需关闭其他应用服务器。

Description

一种调度任务的方法、装置和系统
技术领域
本发明涉及计算机技术,特别地涉及一种调度任务的方法、装置和系统。
背景技术
在一个大型应用系统中,存在多台部署了相同的任务调度系统的任务服务器,这些任务服务器根据“谁先获取到任务谁就先调度执行”的原则执行应用服务器发布的任务。如图1所示,11为应用服务器,12为数据库服务器,13为系统中包含的两台以上任务服务器。应用服务器11发布任务,即生成任务数据,并通常保存在数据库服务器12中。任务服务器13从数据库服务器12中获取任务数据。通常情况下,为了保证业务逻辑的正确,任务被一台应用服务器获取到之后,数据库服务器12中就删除该任务的信息。
在实际应用中,在对任务的数据进行测试时,在任务服务器执行该任务过程中修改了该任务的数据并重新发布该任务,如果此时由另一台任务服务器获取了该任务,则会导致测试无法达到预期目的。此外,在调度任务的过程中,如果任务服务器在获取任务的数据之后,在执行时如果由于自身硬件配置的原因而无法正确执行该任务,则该任务在应用系统中失效,导致系统工作异常。
为了能够正确地执行任务,保证应用系统的工作状态正常,现有的做法是停止具有执行所有任务的权限的其他任务服务器的运行并且仅启动1台任务服务器,使任务只能由该启动的任务服务器执行。这种做法由于关闭了一些任务服务器,从而降低了系统的处理能力。
发明内容
本发明的目的是提供一种任务调度的方法、装置和系统,以解决现有技术中为了将任务调度到指定的任务服务器,降低了系统的处理能力的问题。
本发明实施例中的一种调度任务的方法,应用于包含两台以上任务服务器的应用系统,包括:
在数据库服务器中保存该任务的数据并保存任务与有权限执行该任务的任务服务器的对应关系;
任务服务器根据所述对应关系执行自身有权限执行的任务。
本发明实施例中的一种任务服务器,用于从数据库服务器中获取任务的数据以及执行任务,包括:
确认模块,用于根据预设的任务与有权限执行该任务的任务服务器的对应关系确认一项任务服务器有权限执行的任务;
获取模块,用于从数据库服务器中获取确认模块确认的任务的数据;
执行模块,用于根据获取模块获取的数据执行任务。
本发明实施例中的又一种任务服务器,用于从数据库服务器中获取任务的数据以及执行任务,包括:
获取模块,用于从数据库服务器中获取任务的数据;
设置模块,用于设置获取模块获取的任务的数据在数据库服务器中的属性为不可读;
判断模块,用于在获取模块获取任务的数据后,根据预设的任务与有权限执行该任务的任务服务器的对应关系判断任务服务器是否有权限执行该任务;
执行模块,用于执行任务服务器有权限执行的任务;
所述获取模块进一步用于当判断模块判断任务服务器没有权限执行获取的任务,则不重复地从数据库服务器中获取其他任务的数据;
所述设置模块进一步用于当判断模块判断任务服务器没有权限执行获取的任务,则设置该任务的数据在数据库服务器中的属性为可读。
本发明实施例中的一种应用服务器,包括:
任务数据生成模块,用于生成任务的数据;
权限设置模块,用于对于每项任务,在应用系统中选择有权限执行该任务的任务服务器,保存任务与有权限执行该任务的任务服务器的信息。
本发明实施例中的一种调度任务的系统,包括:
应用服务器,用于生成每项任务的数据和任务与有权限执行该任务的任务服务器的对应关系;
数据库服务器,用于保存应用服务器生成的所述数据和对应关系;
任务服务器,用于根据所述对应关系执行自身有权限执行的任务。
应用本发明实施例给出的技术方案,通过引入权限机制,建立了任务与有权限执行该任务的任务服务器的对应关系,对每项任务规定有权限执行该任务的任务服务器,任务服务器根据自身权限执行任务,从而确保任务能够被调度到指定的任务服务器而执行,并且不会降低系统原有的处理能力。
附图说明
图1为任务调度的系统示意图;
图2为本发明实施例中的方法流程图。
具体实施方式
为了使任务由指定的任务服务器执行并且无需停止其他任务服务器的服务,在本发明实施例中,对于图1所示的应用系统,根据图2所示的步骤处理任务:
步骤S21:应用服务器生成任务的数据并保存在数据库服务器中,并且在数据库服务器中保存该任务和有权限执行该任务的任务服务器的对应关系。该对应关系在本发明实施例中保存在如表1所示的调度列表中。
在本步骤中,应用服务器对生成的每项任务,都设定了一个或几个任务服务器有权限执行该任务,也可以设定应用系统中所有任务服务器有权限执行该任务。表1每一行包含任务名称与有权限执行该任务的服务器的名称。这里使用任务名称来标识每项任务,也可以用任务的其他信息如生成任务的数据时给出的流水号。这里使用任务服务器的名称来标识每项任务服务器,也可以用任务服务器的其他信息,如任务服务器的编号或硬件标识信息。
任务1 R1,R2
任务2 R2
任务3 /
任务4 R3
表1
对于表1中第1列记录任务名,第2列记录有权限执行第1列所示任务的应用服务器的名称。每行第2列涉及的应用服务器可以是一台,也可以是多台;也可以是应用系统中所有任务服务器,如表1第2列第3行所示。
步骤S22:任务服务器根据所述对应关系执行自身有权限执行的任务。
在本发明实施例中对任务服务器设定执行任务的权限,使得任务能够被预先指定的一台或多台任务服务器执行。步骤S22是应用系统中每台开启的任务服务器在运行时执行的步骤,它们必须根据设定的权限来执行任务,步骤S22具体可以有两种方式,下面分别对步骤S22包含的具体步骤进行说明。
步骤S22的一种执行方式如下:
任务服务器根据调度列表查找自身有权限执行的任务。例如任务服务器R2,它从调度列表中查得自身有权限执行任务1、2和3,于是随机地获取其中一项任务的数据,然后执行该任务。在获取到任务的数据之后还可以删除数据库服务器中该任务的数据,以免其他任务服务器执行了该任务,造成重复执行的逻辑错误。
在这种方式下,任务服务器在获取任务数据之前,先确认了哪些任务是自身有权限执行的,然后再有目的地获取这些任务的数据。这种方式适用于每台任务服务器有权限执行的任务在数据库服务器中占有比例较小的情况,保证了任务服务器每次能够有效地获取任务数据,节省了获取到自身没有权限的任务而需要的获取操作所占时间。
另外,任务服务器也可以先获取任务的数据,再来判断自身是否有权限执行,即步骤S22还可以按照如下的方式执行:
任务服务器从数据库服务器中每次获取一项任务的数据,这里的获取可以是随机地获取任务的数据,然后设置数据库服务器中该任务的数据的属性为不可读,以免其他任务服务器获取该任务的数据,再根据调度列表判断自身是否有权限执行该任务,若是,则执行该任务,否则设置数据库服务器中该任务的数据的属性为可读,以及从数据库服务器中获取其他任务的数据,该其他任务应当是任务服务器没有获取过的任务。这种方式适用于数据库服务器中仅有较少数量的任务需要指定的任务服务器来执行,在获取到任务的数据之后根据该任务能够快速地在任务列表中找到有权限执行该任务的任务服务器,并在自身有权限执行任务的情况下立即执行任务。
在步骤S22中任务服务器获取并执行了有权限执行的任务,接下来进行步骤S23。
步骤S23:任务服务器在执行任务之后,删除数据库服务器中该任务的数据。在本步骤中任务服务器在执行任务之后可根据需要修改所述对应关系。因为任务已经被执行,所以为了避免重复执行的逻辑错误发生,此时可以在数据库服务器中删除任务的数据,还可以在所述调度列表中删除该任务和执行该任务的任务服务器的对应关系,这样同时能够释放数据库服务器的存储空间。
在本发明实施例的方法中,任务服务器在执行任务之前对自身的权限进行了判断,若有权限则执行任务,反之则放弃执行,这样能够保证任务被调度到有权限的任务服务器。
另外本发明实施例中的方法适用于包含有两台以上任务服务器的应用系统。因为若该系统中只包含一台任务服务器,则所有任务都应当由该任务服务器来完成,不存在调度任务的问题。
基于上述方法,下面说明本发明实施例中相应的装置。本发明实施例给出的调度任务的系统由应用服务器、数据库服务器以及任务服务器组成。应用服务器用于生成每项任务的数据和任务与有权限执行该任务的任务服务器的对应关系。数据库服务器用于保存应用服务器生成的任务的数据和任务与有权限执行该任务的任务服务器的对应关系。每台任务服务器用于根据任务与有权限执行该任务的任务服务器的对应关系执行自身有权限执行的任务。
应用服务器的一种结构是包括任务数据生成模块和权限设置模块。
任务数据生成模块用于生成任务的数据。权限设置模块用于保存任务与有权限执行该任务的任务服务器的对应关系。
任务服务器的一种结构是包括确认模块、获取模块和执行模块。
确认模块用于根据预设的任务与有权限执行该任务的任务服务器的对应关系确认一项任务服务器有权限执行的任务;获取模块用于从数据库服务器中获取确认模块确认的任务的数据;执行模块用于根据获取模块获取的数据执行任务。
此外任务服务器还可以包括删除模块,用于在获取模块获取到任务的数据之后,删除数据库服务器中该任务的数据。
任务服务器的另一种结构是包括获取模块、设置模块、判断模块和执行模块。
获取模块用于从数据库服务器中获取任务的数据。设置模块用于设置获取模块获取的任务的数据在数据库服务器中的属性为不可读。判断模块用于在获取模块获取任务的数据后,根据预设的任务与有权限执行该任务的任务服务器的对应关系判断任务服务器是否有权限执行该任务。执行模块用于执行任务服务器有权限执行的任务。获取模块进一步用于当判断模块判断任务服务器没有权限执行获取的任务,则不重复地从数据库服务器中获取其他任务的数据。设置模块进一步用于当判断模块判断任务服务器没有权限执行获取的任务,则设置该任务的数据在数据库服务器中的属性为可读。
此外任务服务器还可以包括删除模块,用于在获取模块获取到任务的数据之后,删除数据库服务器中该任务的数据。
应用本发明实施例给出的技术方案,通过引入权限机制,建立了任务与有权限执行该任务的任务服务器的对应关系,对每项任务规定了有权限执行该任务的任务服务器,从而确保任务能够被调度到指定的任务服务器而执行。此外因为应用本发明实施例给出的技术方案,在需要保证任务被指定任务服务器执行时,并不需要关闭任何任务服务器,所以本发明实施例中的技术方案也不会影响系统原有的任务处理能力。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (5)

1.一种调度任务的方法,应用于包含两台以上任务服务器的应用系统,其特征在于,包括:
在数据库服务器中保存各任务的数据并保存任务与有权限执行该任务的任务服务器的对应关系;
任务服务器根据所述对应关系执行自身有权限执行的任务;
任务服务器根据所述有权限执行该任务的任务服务器信息执行自身有权限执行的任务包括:
所述任务服务器从数据库服务器中每次获取一项任务的数据然后设置数据库服务器中该任务的数据的属性为不可读,再根据所述对应关系判断自身是否有权限执行该任务,若是,则执行该任务,否则设置数据库服务器中该任务的数据的属性为可读,以及不重复地从数据库服务器中获取其他任务的数据。
2.如权利要求1所述方法,其特征在于,所述执行该任务之前进一步包括步骤:删除数据库服务器中该任务的数据。
3.一种任务服务器,用于从数据库服务器中获取任务的数据以及执行任务,其特征在于,包括:
获取模块,用于从数据库服务器中获取任务的数据;
设置模块,用于设置获取模块获取的任务的数据在数据库服务器中的属性为不可读;
判断模块,用于在获取模块获取任务的数据后,根据预设的任务与有权限执行该任务的任务服务器的对应关系判断任务服务器是否有权限执行该任务;
执行模块,用于执行任务服务器有权限执行的任务;
所述获取模块进一步用于当判断模块判断任务服务器没有权限执行获取的任务,则不重复地从数据库服务器中获取其他任务的数据;
所述设置模块进一步用于当判断模块判断任务服务器没有权限执行获取的任务,则设置该任务的数据在数据库服务器中的属性为可读。
4.如权利要求3所述任务服务器,其特征在于,进一步包括删除模块,用于在获取模块获取到任务的数据之后,删除数据库服务器中该任务的数据。
5.一种调度任务的系统,其特征在于,包括:
应用服务器,用于生成每项任务的数据和任务与有权限执行该任务的任务服务器的对应关系;
数据库服务器,用于保存应用服务器生成的所述数据和对应关系;
任务服务器,用于根据所述对应关系执行自身有权限执行的任务,任务服务器从数据库服务器中每次获取一项任务的数据然后设置数据库服务器中该任务的数据的属性为不可读,再根据所述对应关系判断自身是否有权限执行该任务,若是,则执行该任务,否则设置数据库服务器中该任务的数据的属性为可读,以及不重复地从数据库服务器中获取其他任务的数据。
CN2008101784383A 2008-11-26 2008-11-26 一种调度任务的方法、装置和系统 Active CN101408852B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2008101784383A CN101408852B (zh) 2008-11-26 2008-11-26 一种调度任务的方法、装置和系统
HK09109002.8A HK1129249A1 (en) 2008-11-26 2009-09-29 Method, apparatus and system for dispatching tasks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101784383A CN101408852B (zh) 2008-11-26 2008-11-26 一种调度任务的方法、装置和系统

Publications (2)

Publication Number Publication Date
CN101408852A CN101408852A (zh) 2009-04-15
CN101408852B true CN101408852B (zh) 2011-09-28

Family

ID=40571873

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101784383A Active CN101408852B (zh) 2008-11-26 2008-11-26 一种调度任务的方法、装置和系统

Country Status (2)

Country Link
CN (1) CN101408852B (zh)
HK (1) HK1129249A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325988A (zh) * 2016-08-03 2017-01-11 天津西瑞尔信息工程有限公司 任务调度方法及装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102148849B (zh) * 2010-06-30 2014-01-08 华为技术有限公司 一种在收视测量中的数据处理方法、装置及系统
CN103345423B (zh) * 2013-07-03 2016-04-20 北京京东尚科信息技术有限公司 一种处理异步任务的方法和系统
CN104050029B (zh) * 2014-05-30 2018-02-16 北京先进数通信息技术股份公司 一种任务调度系统
CN105786918B (zh) * 2014-12-26 2020-08-04 亿阳信通股份有限公司 基于数据载入存储空间的数据查询方法和装置
CN104484228B (zh) * 2014-12-30 2017-12-29 成都因纳伟盛科技股份有限公司 基于Intelli‑DSC的分布式并行任务处理系统
CN109816199B (zh) * 2018-12-14 2023-09-22 深圳平安医疗健康科技服务有限公司 工作任务处理方法及装置、服务器和计算机可读存储介质
CN110515714A (zh) * 2019-08-15 2019-11-29 浙江万朋教育科技股份有限公司 一种基于集群系统的任务均衡调度方法
CN113094164A (zh) * 2021-04-27 2021-07-09 上海商汤科技开发有限公司 一种任务处理装置、方法、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1131704A1 (en) * 1998-11-16 2001-09-12 Telefonaktiebolaget Lm Ericsson Processing system scheduling
CN1475949A (zh) * 2002-08-15 2004-02-18 英业达股份有限公司 工作计划管理方法以及系统
CN1912866A (zh) * 2005-08-11 2007-02-14 上海慎源数码科技有限公司 基于网络的可调度的多媒体发布方法及其系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1131704A1 (en) * 1998-11-16 2001-09-12 Telefonaktiebolaget Lm Ericsson Processing system scheduling
CN1475949A (zh) * 2002-08-15 2004-02-18 英业达股份有限公司 工作计划管理方法以及系统
CN1912866A (zh) * 2005-08-11 2007-02-14 上海慎源数码科技有限公司 基于网络的可调度的多媒体发布方法及其系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325988A (zh) * 2016-08-03 2017-01-11 天津西瑞尔信息工程有限公司 任务调度方法及装置
CN106325988B (zh) * 2016-08-03 2019-06-18 天津西瑞尔信息工程有限公司 任务调度方法及装置

Also Published As

Publication number Publication date
CN101408852A (zh) 2009-04-15
HK1129249A1 (en) 2009-11-20

Similar Documents

Publication Publication Date Title
CN101408852B (zh) 一种调度任务的方法、装置和系统
CN101567013B (zh) 一种etl调度的实现方法及装置
CN107015842B (zh) 一种服务器端程序编译和发布的管理方法及系统
CN106815066A (zh) 一种定时任务调度方法、装置及系统
Ou et al. Parallel machine scheduling with multiple unloading servers
CN101778004B (zh) 用于执行基于门限值调度的设备管理的终端和方法
CN101697136B (zh) 一种资源控制方法和装置
CN111026602A (zh) 一种云平台的健康巡检调度管理方法、装置及电子设备
CN105260297B (zh) 一种测试数据管理系统及方法
Nagamine et al. A case study of applying software product line engineering to the air conditioner domain
CN107133327B (zh) 一种支持多数据类型的数据交换方法及系统
CN105446812A (zh) 一种多任务调度配置方法
CN107644041A (zh) 保单结算处理方法和装置
CN111338767B (zh) PostgreSQL主从数据库自动切换系统及方法
US9671779B2 (en) Method and system for filtering lot schedules using a previous schedule
CN102360312A (zh) 一种设备使用调度方法
Qureshi et al. A timed automata-based method to analyze east-adl timing constraint specifications
CN113342650A (zh) 分布式系统的混沌工程方法及装置
Franke et al. Improving Maintenance Activities by the Usage of BOL data
CN108572863A (zh) 分布式任务调度系统及方法
CN101371236B (zh) 用于执行基于门限值调度的设备管理的终端和方法
Wang et al. Time management in distributed factory simulation, a case study using HLA
CN116743876B (zh) 一种基于xxl-job实现多租户调度的方法
CN114185619B (zh) 基于分布式作业的断点补偿方法、装置、设备及介质
CN116167591B (zh) 一种基于工艺网络的排程方法、系统、设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1129249

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1129249

Country of ref document: HK

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191211

Address after: P.O. Box 31119, grand exhibition hall, hibiscus street, 802 West Bay Road, Grand Cayman, Cayman Islands

Patentee after: Innovative advanced technology Co., Ltd

Address before: Greater Cayman Islands, British Cayman Islands

Patentee before: Alibaba Group Holding Co., Ltd.