CN109634730A - 任务调度方法、装置、计算机设备和存储介质 - Google Patents
任务调度方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109634730A CN109634730A CN201811417615.9A CN201811417615A CN109634730A CN 109634730 A CN109634730 A CN 109634730A CN 201811417615 A CN201811417615 A CN 201811417615A CN 109634730 A CN109634730 A CN 109634730A
- Authority
- CN
- China
- Prior art keywords
- task
- terminal
- scheduler task
- scheduler
- scheduling
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012986 modification Methods 0.000 claims description 28
- 230000004048 modification Effects 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000011161 development Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000012141 concentrate Substances 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及开发领域,特别涉及一种任务调度方法、装置、计算机设备和存储介质。所述方法包括:接收第一终端发送的调度任务,所述调度任务携带有执行时间和第二终端信息;对接入所述调度任务后的运行情况进行评估,当评估通过时,将所述调度任务存储到任务池中;根据所述调度任务的执行时间生成对应的调度时间;当前时间到达所述调度时间时,从所述任务池中获取所述调度任务携带的所述第二终端信息;将所述调度任务发送至所述第二终端信息对应的第二终端。采用本方法能够集中、灵活地管理一个终端集群的定时任务,更准确地执行每一个调度任务。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种任务调度方法、装置、计算机设备和存储介质。
背景技术
随着现代科技的发展,电脑等移动终端在办公过程中起到了越来越重要的作用。很多时候,不同的终端需要执行多个定时任务,来进行数据收集和分析。
传统地,每个终端的定时任务是各自通过各自终端上的设备来执行的。然而,对于一个终端的集群来说,其下属终端的定时任务无法被灵活管理,容易导致因定时任务在分派后被修改等情况,而导致任务执行的结果不准确等问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够灵活管理终端的调度任务的任务调度方法、装置、计算机设备和存储介质。
一种任务调度方法,所述方法包括:
接收第一终端发送的调度任务,所述调度任务携带有执行时间和第二终端信息;
对接入所述调度任务后的运行情况进行评估,当评估通过时,将所述调度任务存储到任务池中;
根据所述调度任务的执行时间生成对应的调度时间;
当前时间到达所述调度时间时,从所述任务池中获取所述调度任务携带的所述第二终端信息;
将所述调度任务发送至所述第二终端信息对应的第二终端。
在其中一个实施例中,所述将所述调度任务发送至所述第二终端信息对应的第二终端之后,还包括:
接收所述第二终端返回的与所述调度任务对应的执行结果,所述执行结果是所述第二终端将所述调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的所述子任务的结果;
当所述执行结果为完成时,从所述任务池中移除所述调度任务。
在其中一个实施例中,所述接收所述第二终端返回的与所述调度任务对应的执行结果之后,还包括:
当所述执行结果为出错时,重新设定所述调度任务对应的调度时间;
继续所述当当前时间到达所述调度时间时,从所述任务池中获取所述调度任务中携带的所述第二终端信息。
在其中一个实施例中,所述将所述调度任务存储到任务池中之后,还包括:
接收修改指令,所述修改指令中包含任务信息和修改信息;
从所述任务池中获取所述任务信息对应的调度任务;
根据所述修改信息修改所述调度任务。
在其中一个实施例中,所述将所述调度任务发送至所述第二终端信息对应的第二终端,包括:
查询所述第二终端信息对应的第二终端的数量;
当所述数量超过预设值时,检测每个所述第二终端在所述调度任务的执行时间的调度任务数量;
将所述调度任务发送到所述调度任务数量最少的第二终端中。
在其中一个实施例中,所述对接入所述调度任务后的运行情况进行评估之后,还包括:
当评估不通过时,生成并发送报警通知;
接收与所述报警通知对应的处理方案。
一种任务调度装置,所述装置包括:
任务获取模块,用于接收第一终端发送的调度任务,所述调度任务携带有执行时间和第二终端信息;
评估模块,用于对接入所述调度任务后的运行情况进行评估,当评估通过时,将所述调度任务存储到任务池中;
调度时间生成模块,用于根据所述调度任务的执行时间生成对应的调度时间;
调度模块,用于当前时间到达所述调度时间时,从所述任务池中获取所述调度任务携带的所述第二终端信息;
任务分派模块,用于将所述调度任务发送至所述第二终端信息对应的第二终端。
在其中一个实施例中,所述装置还包括:
结果接收模块,用于接收所述第二终端返回的与所述调度任务对应的执行结果,所述执行结果是所述第二终端将所述调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的所述子任务的结果;
任务移除模块,用于当所述执行结果为完成时,从所述任务池中移除所述调度任务。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
上述任务调度方法、装置、计算机设备和存储介质,技术人员建立一个集中处理多个第一终端的定时任务的调度中心,将每个第一终端中待执行的定时任务都集中收归调度中心分派处理,此调度中心获取第一终端的调度任务,先衡量下接入的任务量是否能够在服务器上正常运行,若可以,则根据每个定时任务的执行时间生成一个调度时间,并通过任务池管理所有的调度任务,当任务池中有到达调度时间的调度任务时,则将其分派到对应的第二终端执行。上述任务调度方法,能够集中、灵活地管理一个终端集群的定时任务,更准确地执行每一个调度任务。
附图说明
图1为一个实施例中任务调度方法的应用场景图;
图2为一个实施例中任务调度方法的流程示意图;
图3为一个实施例中任务调度装置的结构框图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的任务调度方法,可以应用于如图1所示的应用环境中。其中,第一终端102、服务器104与第二终端106之间通过网络进行通信。第一终端102若有需要执行的调度任务时,将此调度任务发送至服务器104,服务器104接收到调度任务后,检测服务器104接入此调度任务是否会影响运行情况,若不影响,则将次调度任务存入任务池,并根据其执行时间生成一个调度到执行终端执行的调度时间,当调度时间到达时,即将此任务分派到对应的第二终端106执行。其中,第一终端102和第二终端106可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种任务调度方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
S202,接收第一终端发送的调度任务,调度任务携带有执行时间和第二终端信息。
其中,第一终端是有待执行的调度任务的终端,可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
调度任务是第一终端上需执行的文件获取任务、数据接入任务等等定时任务,技术人员在设定此类任务时,会对其设定一个执行时间;例如一个调度任务为每天早上七点从业务数据库中获取前一天的交易数据,则每天早上七点为此任务的执行时间。
第二终端信息是调度任务最终被执行的终端的信息,可以是终端的物理地址或者对应的IP地址(Internet Protocol网络协议地址)等;服务器可以根据第二终端信息找到对应的第二终端。第一终端和第二终端可以为相同的终端,也可以为不同的终端。
具体地,技术人员可以在服务器建立一个调度中心,管理多个第一终端上的待执行的调度任务,当第一终端上存在待执行的调度任务时,将此调度任务发送至服务器,调度任务中携带有执行时间和此任务需要被执行的第二终端信息。
S204,对接入调度任务后的运行情况进行评估,当评估通过时,将调度任务存储到任务池中。
具体地,调度中心在整合一个第一终端的调度任务之前,需要先对接入后的运行状况进行评估,如评估接入后的ESB(企业服务总线)流量的峰值是否超过ESB的限流限制的85%(根据经验得知的阈值),或者评估一个调度任务中的定时任务数量超过15个或30个,则此调度任务可能无法顺利执行。当服务器判定接入此调度任务后不会影响服务器的正常运作时,则评估通过,将调度任务存储到任务池中。任务池是调度中心用于管理所有第一终端发送的调度任务的数据库,服务器将所有接入的调度任务都放置在任务池中集中管理。
可选地,服务器评估计入调度任务后的运行情况可以是检测任务池中的调度任务总数是否达到预设的压力上限,如果是则在接入新定时任务接入的时候进行警示;为保证服务器上的调度中心正常运行,可在调度中心中设置压力测试功能,在测试环境中测试任务池中接入的任务数量、任务接入频率、调度运行状况等对服务器运行的影响情况来设置预设压力上限,只有当压力测试结果正常,才能够允许继续接入调度任务。由于调度任务的接入并非匀速的,通过任务池中的任务数量来决定是否开始压力检测,比定时的压力检测更加能够反映其允许状况,也能够实时监控。服务器可以根据压力测试的结果进行机器扩容、调整压力上限设置等操作。
S206,根据调度任务的执行时间生成对应的调度时间。
其中,调度时间是服务器根据接入的调度任务的执行时间设定的一个时间,服务器在到达调度时间时,将此任务从任务池中取出,分派到第二终端执行的时间,其应早于调度任务的执行时间。
S208,当前时间到达调度时间时,从任务池中获取调度任务携带的第二终端信息。
具体地,待任务池中的调度任务到达调度时间后,服务器将调度任务从任务池中取出,分派到执行终端执行此任务,服务器在分派前应先获取调度任务中心携带的第二终端信息。
S210,将调度任务发送至第二终端信息对应的第二终端。
具体地,服务器根据第二终端信息查询到对应的执行终端,并与此终端建立连接,将到达调度时间的调度任务分派到对应的执行终端执行此任务,完成此次的任务调度。
上述任务调度方法,技术人员建立一个集中处理多个第一终端的定时任务的调度中心,将每个第一终端中待执行的定时任务都集中收归调度中心分派处理,此调度中心获取第一终端的调度任务,先衡量下接入的任务量是否能够在服务器上正常运行,若可以,则根据每个定时任务的执行时间生成一个调度时间,并通过任务池管理所有的调度任务,当任务池中有到达调度时间的调度任务时,则将其分派到对应的第二终端执行。上述任务调度方法,能够集中、灵活地管理一个终端集群的定时任务,更准确地执行每一个调度任务。
在一个实施例中,上述任务调度方法中的步骤S210将调度任务发送至第二终端信息对应的第二终端之后,还可以包括:接收第二终端返回的与调度任务对应的执行结果,执行结果是第二终端将调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的子任务的结果;当执行结果为完成时,从任务池中移除调度任务。
其中,执行结果是第二终端在执行此调度任务对应的数据调取或其他操作的结果,若调度任务为数据调取操作,则执行结果为是否调取成功或其数据返回值等。
预设调度队列是第二终端存储服务器分派的调度任务的存储队列,可以是FIFO队列(First Input First Output先入先出队列),先执行先进入队列的定时任务,直至将整个调度任务执行完成。
具体地,服务器将调度任务分派给第二终端执行后,第二终端执行完此调度任务后可以向服务器发送此调度任务是否正常执行的执行结果,如调度任务的执行时间内正常执行,则第二终端向服务器发送执行成功的结果;若未被正常执行,则向服务器发送执行失败的结果。第二终端调度中心发送的调度任务后,此调度任务携带有执行时间,将此调度任务中分解为多个定时的子任务存储到第二终端上的调度队列中,当调度任务到达启动时间时,从调度队列中依次取出此调度任务的定时子任务,依次执行。若一个调度任务中本身就包含多个定时任务,则不需第二终端另外分解,将每个定时任务作为子任务,并存入调度队列中,保证调度任务中的每一条定时子任务都可以被准确执行,当调度队列中一个定时任务的所有子任务都被成功执行时,则可认为此对调度任务执行成功。
进一步地,通过调度队列,第二终端可以控制相同时刻,永远不会有两个相同的定时任务同时执行,但是不同定时任务之间可以并行执行。同时,第二终端支持根据实际的业务量灵活配置把不同的处理策略,如超时未执行成功则认为此调度任务执行失败、不同定时子任务的并发数和并发处理能力等等。
上述实施例中,第二终端通过调度队列管理调度中心分派的调度任务,可保证调度任务被准确执行;第二终端向调度中心返回此调度任务的执行结果,便于调度中心了解分派的调度任务的执行情况。
上述的任务调度方法在接收第二终端返回的与调度任务对应的执行结果之后,还可以包括:根据调度任务的执行结果生成执行日志,将此执行日志保存在预设位置。具体地,当业务量较大,或者一个调度任务的文件过大的时候,可能存在上一个任务没处理完,下一个又到达启动时间了,则可能存在调度任务执行失败的情况。则可以通过执行日志记录每一个第二终端中被分派的调度任务的执行结果,方便调度重点查看和纠错。另外,当一个调度任务被执行失败时,第二终端可以生成一个通知消息,如报警邮件等,提示调度中心此任务执行失败,可由调度中心方决定是否重新执行或者分派到其他第二终端执行。
在一个实施例中,上述任务调度方法中的接收第二终端返回的与调度任务对应的执行结果之后,还可以包括:当执行结果为出错时,重新设定调度任务对应的调度时间;继续当当前时间到达调度时间时,从任务池中获取调度任务中携带的第二终端信息。
具体地,若第二终端未成功执行此调度任务,则将执行失败的结果发送至服务器后,技术人员可检查执行失败的错误,将错误排除后,依据工作或者业务需求检验是否需要重新执行此调度任务,若需重新执行,则重新设定任务池中这一调度任务的调度时间,待到达调度时间时,再将其分派到对应的第二终端重新执行。其中,由于第一次执行出错,此调度任务可能已经过了其执行时间,则技术人员可根据实际情况调整执行时间。
上述实施例中,服务器可对未执行成功的调度任务重新设定调度时间,分派给终端重新执行。
在一个实施例中,上述任务调度方法中的步骤S204中的将调度任务存储到任务池中之后,还可以包括:接收修改指令,修改指令中包含任务信息和修改信息;从任务池中获取任务信息对应的调度任务;根据修改信息修改调度任务。
其中,修改指令是第一终端或研发人员发送的对任务池中的调度任务进行修改的信息;其中应包含用于服务器从任务池中查询待修改的调度任务的任务信息,例如任务号或者任务名称等;还应包含用于修改调度任务中的内容,例如原来的调度任务出错的数据和替换的数据等等。
具体地,在调度中心的调度任务未被派发至第二终端之前,技术人员或者其他终端等有修改权限的使用者可以对其进行修改,可以包括修改调度任务的执行与否、或者修改执行时间、调度时间、是否暂停执行,或者删除此调度任务等。
上述实施例中,在调度任务在服务器任务池中时,可以通过向服务器发送修改指令的方式对任务池中的调度任务进行修改。
在一个实施例中,上述任务调度方法中的步骤S210将调度任务发送至第二终端信息对应的第二终端,可以包括:查询第二终端信息对应的第二终端的数量;当数量超过预设值时,检测每个第二终端在调度任务的执行时间的调度任务数量;将调度任务发送到调度任务数量最少的第二终端中。
其中,预设值第二终端信息对应的第二终端数量的阈值,可根据实际情况进行设定,可以设为1。
具体地,当一个调度任务可由多个第二终端来执行,即可执行调度任务的第二终端信息对应超过预设值个第二终端时,检测每个对应的第二终端在此调度任务的执行时间的调度任务数,选择一个在此调度任务的执行时间无其他调度任务需执行的第二终端来执行此调度任务。另外,若多个第二终端都在执行时间为空闲状态时,也可以采取“轮询”的方式来分派调度任务,即按照顺序依次将调度任务分配到每个空闲的第二终端执行。
上述实施例中,当一个调度任务可由多个第二终端来执行,可选择空闲的第二终端执行调度任务,充分利用终端资源,避免任务分配不均。
在一个实施例中,上述任务调度方法中的步骤S204中的对接入调度任务后的运行情况进行评估之后,还可以包括:当评估不通过时,生成并发送报警通知;接收与报警通知对应的处理方案。
其中,报警通知是用于提示工作人员此次调度任务无法顺利接入调度中心的通知,可以以邮件或者消息的形式发送至调度中心管理员的终端。
具体地,当调度中心在接入调度任务之前,发现接入评估不通过时,则调度中心生成一个报警通知,提示技术人员注意此情况。技术人员可以根据评估不通过的原因,来发送一个处理方案来解决此问题。例如,当ESB流量的峰值超出流量限制的阈值时,则调整定时任务的接入频率,或者加强ESB能力等。或者当一个调度任务中的定时任务数量超过15个或30个,则需要检测是否需要将定时任务独立于业务系统进行部署。
上述实施例中,若在接入调度任务时,若服务器对接入调度任务后的运行情况评估不通过,则通过报警通知提醒技术人员处理此情况。
应该理解的是,虽然图2流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种任务调度装置,包括:任务获取模块100、评估模块200、调度时间生成模块300、调度模块400和任务分派模块500,其中:
任务获取模块100,用于接收第一终端发送的调度任务,调度任务携带有执行时间和第二终端信息。
评估模块200,用于对接入调度任务后的运行情况进行评估,当评估通过时,将调度任务存储到任务池中。
调度时间生成模块300,用于根据调度任务的执行时间生成对应的调度时间。
调度模块400,用于当前时间到达调度时间时,从任务池中获取调度任务携带的第二终端信息。
任务分派模块500,用于将调度任务发送至第二终端信息对应的第二终端。
在一个实施例中,上述任务调度装置中还可以包括:
结果接收模块,用于接收第二终端返回的与调度任务对应的执行结果,执行结果是第二终端将调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的子任务的结果。
任务移除模块,用于当执行结果为完成时,从任务池中移除调度任务。
在一个实施例中,上述任务调度装置还可以包括:
时间重设模块,用于当执行结果为出错时,重新设定调度任务对应的调度时间。
继续执行模块,用于继续当当前时间到达调度时间时,从任务池中获取调度任务中携带的第二终端信息。
在一个实施例中,上述任务调度装置还可以包括:
修改指令接收模块,用于接收修改指令,修改指令中包含任务信息和修改信息。
修改定位模块,用于从任务池中获取任务信息对应的调度任务。
修改模块,用于根据修改信息修改调度任务。
在一个实施例中,上述任务调度装置中的任务分派模块500可以包括:
终端查询单元,用于查询第二终端信息对应的第二终端的数量。
终端任务量检测单元,用于当数量超过预设值时,检测每个第二终端在调度任务的执行时间的调度任务数量。
任务分派单元,用于将调度任务发送到调度任务数量最少的第二终端中。
在一个实施例中,上述任务调度装置还可以包括:
报警通知生成模块,用于当评估不通过时,生成并发送报警通知。
方案接收模块,用于接收与报警通知对应的处理方案。
关于任务调度装置的具体限定可以参见上文中对于任务调度方法的限定,在此不再赘述。上述任务调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储任务调度数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种任务调度方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收第一终端发送的调度任务,调度任务携带有执行时间和第二终端信息;对接入调度任务后的运行情况进行评估,当评估通过时,将调度任务存储到任务池中;根据调度任务的执行时间生成对应的调度时间;当前时间到达调度时间时,从任务池中获取调度任务携带的第二终端信息;将调度任务发送至第二终端信息对应的第二终端。
在一个实施例中,处理器执行计算机程序时实现的将调度任务发送至第二终端信息对应的第二终端之后,还包括:接收第二终端返回的与调度任务对应的执行结果,执行结果是第二终端将调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的子任务的结果;当执行结果为完成时,从任务池中移除调度任务。
在一个实施例中,处理器执行计算机程序时实现的接收第二终端返回的与调度任务对应的执行结果之后,还包括:当执行结果为出错时,重新设定调度任务对应的调度时间;继续当当前时间到达调度时间时,从任务池中获取调度任务中携带的第二终端信息。
在一个实施例中,处理器执行计算机程序时实现的将调度任务存储到任务池中之后,还包括:接收修改指令,修改指令中包含任务信息和修改信息;从任务池中获取任务信息对应的调度任务;根据修改信息修改调度任务。
在一个实施例中,处理器执行计算机程序时实现的将调度任务发送至第二终端信息对应的第二终端,包括:查询第二终端信息对应的第二终端的数量;当数量超过预设值时,检测每个第二终端在调度任务的执行时间的调度任务数量;将调度任务发送到调度任务数量最少的第二终端中。
在一个实施例中,处理器执行计算机程序时实现的对接入调度任务后的运行情况进行评估之后,还包括:当评估不通过时,生成并发送报警通知;接收与报警通知对应的处理方案。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收第一终端发送的调度任务,调度任务携带有执行时间和第二终端信息;对接入调度任务后的运行情况进行评估,当评估通过时,将调度任务存储到任务池中;根据调度任务的执行时间生成对应的调度时间;当前时间到达调度时间时,从任务池中获取调度任务携带的第二终端信息;将调度任务发送至第二终端信息对应的第二终端。
在一个实施例中,计算机程序被处理器执行时实现的将调度任务发送至第二终端信息对应的第二终端之后,还包括:接收第二终端返回的与调度任务对应的执行结果,执行结果是第二终端将调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的子任务的结果;当执行结果为完成时,从任务池中移除调度任务。
在一个实施例中,计算机程序被处理器执行时实现的接收第二终端返回的与调度任务对应的执行结果之后,还包括:当执行结果为出错时,重新设定调度任务对应的调度时间;继续当当前时间到达调度时间时,从任务池中获取调度任务中携带的第二终端信息。
在一个实施例中,计算机程序被处理器执行时实现的将调度任务存储到任务池中之后,还包括:接收修改指令,修改指令中包含任务信息和修改信息;从任务池中获取任务信息对应的调度任务;根据修改信息修改调度任务。
在一个实施例中,计算机程序被处理器执行时实现的将调度任务发送至第二终端信息对应的第二终端,包括:查询第二终端信息对应的第二终端的数量;当数量超过预设值时,检测每个第二终端在调度任务的执行时间的调度任务数量;将调度任务发送到调度任务数量最少的第二终端中。
在一个实施例中,计算机程序被处理器执行时实现的对接入调度任务后的运行情况进行评估之后,还包括:当评估不通过时,生成并发送报警通知;接收与报警通知对应的处理方案。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种任务调度方法,所述方法包括:
接收第一终端发送的调度任务,所述调度任务携带有执行时间和第二终端信息;
对接入所述调度任务后的运行情况进行评估,当评估通过时,将所述调度任务存储到任务池中;
根据所述调度任务的执行时间生成对应的调度时间;
当前时间到达所述调度时间时,从所述任务池中获取所述调度任务携带的所述第二终端信息;
将所述调度任务发送至所述第二终端信息对应的第二终端。
2.根据权利要求1所述的方法,其特征在于,所述将所述调度任务发送至所述第二终端信息对应的第二终端之后,还包括:
接收所述第二终端返回的与所述调度任务对应的执行结果,所述执行结果是所述第二终端将所述调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的所述子任务的结果;
当所述执行结果为完成时,从所述任务池中移除所述调度任务。
3.根据权利要求2所述的方法,其特征在于,所述接收所述第二终端返回的与所述调度任务对应的执行结果之后,还包括:
当所述执行结果为出错时,重新设定所述调度任务对应的调度时间;
继续所述当当前时间到达所述调度时间时,从所述任务池中获取所述调度任务中携带的所述第二终端信息。
4.根据权利要求1所述的方法,其特征在于,所述将所述调度任务存储到任务池中之后,还包括:
接收修改指令,所述修改指令中包含任务信息和修改信息;
从所述任务池中获取所述任务信息对应的调度任务;
根据所述修改信息修改所述调度任务。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述将所述调度任务发送至所述第二终端信息对应的第二终端,包括:
查询所述第二终端信息对应的第二终端的数量;
当所述数量超过预设值时,检测每个所述第二终端在所述调度任务的执行时间的调度任务数量;
将所述调度任务发送到所述调度任务数量最少的第二终端中。
6.根据权利要求1至4任意一项所述的方法,其特征在于,所述对接入所述调度任务后的运行情况进行评估之后,还包括:
当评估不通过时,生成并发送报警通知;
接收与所述报警通知对应的处理方案。
7.一种任务调度装置,其特征在于,所述装置包括:
任务获取模块,用于接收第一终端发送的调度任务,所述调度任务携带有执行时间和第二终端信息;
评估模块,用于对接入所述调度任务后的运行情况进行评估,当评估通过时,将所述调度任务存储到任务池中;
调度时间生成模块,用于根据所述调度任务的执行时间生成对应的调度时间;
调度模块,用于当前时间到达所述调度时间时,从所述任务池中获取所述调度任务携带的所述第二终端信息;
任务分派模块,用于将所述调度任务发送至所述第二终端信息对应的第二终端。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
结果接收模块,用于接收所述第二终端返回的与所述调度任务对应的执行结果,所述执行结果是所述第二终端将所述调度任务分解为按照预设调度队列排序的多个子任务后,执行排序后的所述子任务的结果;
任务移除模块,用于当所述执行结果为完成时,从所述任务池中移除所述调度任务。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811417615.9A CN109634730B (zh) | 2018-11-26 | 2018-11-26 | 任务调度方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811417615.9A CN109634730B (zh) | 2018-11-26 | 2018-11-26 | 任务调度方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109634730A true CN109634730A (zh) | 2019-04-16 |
CN109634730B CN109634730B (zh) | 2024-05-31 |
Family
ID=66069119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811417615.9A Active CN109634730B (zh) | 2018-11-26 | 2018-11-26 | 任务调度方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109634730B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110472876A (zh) * | 2019-08-19 | 2019-11-19 | 北京首都在线科技股份有限公司 | 一种任务调度方法、装置及计算机可读存储介质 |
CN111090665A (zh) * | 2019-11-15 | 2020-05-01 | 广东数果科技有限公司 | 一种数据任务调度方法及调度系统 |
CN111200653A (zh) * | 2019-12-31 | 2020-05-26 | 深圳市科漫达智能管理科技有限公司 | 多平台通讯方法、多平台通讯装置及中间服务器 |
CN111209103A (zh) * | 2020-01-20 | 2020-05-29 | 浙江工商大学 | 一种进程任务调度方法、装置及设备 |
CN111290959A (zh) * | 2020-02-20 | 2020-06-16 | 中国建设银行股份有限公司 | 一种测试任务的调度方法、装置、电子设备及存储介质 |
WO2020259168A1 (zh) * | 2019-06-28 | 2020-12-30 | 炬星科技(深圳)有限公司 | 一种任务调度方法、装置、系统、电子设备及存储介质 |
CN112817666A (zh) * | 2021-01-27 | 2021-05-18 | 北京字跳网络技术有限公司 | 定时方法、装置、电子设备和存储介质 |
CN113656155A (zh) * | 2021-07-21 | 2021-11-16 | 广州三七互娱科技有限公司 | 任务处理方法、装置、计算机设备和存储介质 |
CN114245288A (zh) * | 2021-10-29 | 2022-03-25 | 重庆惠科金渝光电科技有限公司 | 一种服务设备的任务调度方法、服务设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870348A (zh) * | 2012-12-14 | 2014-06-18 | 中国电信股份有限公司 | 一种用户并发访问的测试方法和系统 |
CN104765639A (zh) * | 2015-04-30 | 2015-07-08 | 北京奇虎科技有限公司 | 定时任务调度系统及方法 |
CN106095562A (zh) * | 2016-08-23 | 2016-11-09 | 北京云纵信息技术有限公司 | 任务调度管理的方法和装置 |
WO2017133487A1 (zh) * | 2016-02-01 | 2017-08-10 | 腾讯科技(深圳)有限公司 | 一种任务调度方法、装置和计算机存储介质 |
CN107688496A (zh) * | 2017-07-24 | 2018-02-13 | 上海壹账通金融科技有限公司 | 任务分布式处理方法、装置、存储介质和服务器 |
CN108228355A (zh) * | 2018-01-02 | 2018-06-29 | 武汉斗鱼网络科技有限公司 | 任务处理方法及装置、任务调度方法及装置 |
-
2018
- 2018-11-26 CN CN201811417615.9A patent/CN109634730B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870348A (zh) * | 2012-12-14 | 2014-06-18 | 中国电信股份有限公司 | 一种用户并发访问的测试方法和系统 |
CN104765639A (zh) * | 2015-04-30 | 2015-07-08 | 北京奇虎科技有限公司 | 定时任务调度系统及方法 |
WO2017133487A1 (zh) * | 2016-02-01 | 2017-08-10 | 腾讯科技(深圳)有限公司 | 一种任务调度方法、装置和计算机存储介质 |
CN106095562A (zh) * | 2016-08-23 | 2016-11-09 | 北京云纵信息技术有限公司 | 任务调度管理的方法和装置 |
CN107688496A (zh) * | 2017-07-24 | 2018-02-13 | 上海壹账通金融科技有限公司 | 任务分布式处理方法、装置、存储介质和服务器 |
CN108228355A (zh) * | 2018-01-02 | 2018-06-29 | 武汉斗鱼网络科技有限公司 | 任务处理方法及装置、任务调度方法及装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020259168A1 (zh) * | 2019-06-28 | 2020-12-30 | 炬星科技(深圳)有限公司 | 一种任务调度方法、装置、系统、电子设备及存储介质 |
CN110472876A (zh) * | 2019-08-19 | 2019-11-19 | 北京首都在线科技股份有限公司 | 一种任务调度方法、装置及计算机可读存储介质 |
CN111090665A (zh) * | 2019-11-15 | 2020-05-01 | 广东数果科技有限公司 | 一种数据任务调度方法及调度系统 |
CN111200653A (zh) * | 2019-12-31 | 2020-05-26 | 深圳市科漫达智能管理科技有限公司 | 多平台通讯方法、多平台通讯装置及中间服务器 |
CN111209103A (zh) * | 2020-01-20 | 2020-05-29 | 浙江工商大学 | 一种进程任务调度方法、装置及设备 |
CN111290959A (zh) * | 2020-02-20 | 2020-06-16 | 中国建设银行股份有限公司 | 一种测试任务的调度方法、装置、电子设备及存储介质 |
CN112817666A (zh) * | 2021-01-27 | 2021-05-18 | 北京字跳网络技术有限公司 | 定时方法、装置、电子设备和存储介质 |
CN112817666B (zh) * | 2021-01-27 | 2023-07-21 | 北京字跳网络技术有限公司 | 定时方法、装置、电子设备和存储介质 |
CN113656155A (zh) * | 2021-07-21 | 2021-11-16 | 广州三七互娱科技有限公司 | 任务处理方法、装置、计算机设备和存储介质 |
CN113656155B (zh) * | 2021-07-21 | 2024-04-12 | 广州三七互娱科技有限公司 | 任务处理方法、装置、计算机设备和存储介质 |
CN114245288A (zh) * | 2021-10-29 | 2022-03-25 | 重庆惠科金渝光电科技有限公司 | 一种服务设备的任务调度方法、服务设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109634730B (zh) | 2024-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109634730A (zh) | 任务调度方法、装置、计算机设备和存储介质 | |
CN112910945B (zh) | 请求链路跟踪方法和业务请求处理方法 | |
CN110351342A (zh) | 业务指令处理方法、装置、计算机设备和存储介质 | |
CN106406993A (zh) | 一种定时任务管理方法和系统 | |
EP3489825A1 (en) | Method, apparatus and computer readable storage medium for processing service | |
US20130283097A1 (en) | Dynamic network task distribution | |
US8606905B1 (en) | Automated determination of system scalability and scalability constraint factors | |
US20070213064A1 (en) | Computer system and information processing method | |
CN108446172B (zh) | 数据调取方法、装置、计算机设备和存储介质 | |
US10642585B1 (en) | Enhancing API service schemes | |
US8892518B1 (en) | System and method of intelligent log agents | |
CN112288400A (zh) | 多系统数据交互方法、装置、计算机设备及存储介质 | |
CN109347918A (zh) | 调用方法、调用装置、服务器、终端及计算机可读存储介质 | |
US10783007B2 (en) | Load distribution for integration scenarios | |
CN110245009B (zh) | 周期任务分配方法、装置、计算机设备和存储介质 | |
JP2012089049A (ja) | 計算機システム及びサーバ | |
CN117041355A (zh) | 任务的分发方法、计算机可读存储介质和任务分发系统 | |
CN111556126B (zh) | 模型管理方法、系统、计算机设备和存储介质 | |
CN111694671B (zh) | 大数据组件管理方法、装置、服务器、电子设备及系统 | |
CN111190725B (zh) | 任务处理方法、装置、存储介质及服务器 | |
CN115543491A (zh) | 微服务处理方法和装置 | |
CN102868594A (zh) | 一种消息处理方法和装置 | |
US9092258B2 (en) | Task concurrency limiter | |
CN112540771A (zh) | 自动化运维方法、系统、设备和计算机可读存储介质 | |
CN110134502A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |