计划任务单例程序的部署及运行方法、装置和系统的制作方法

文档序号:9767867阅读:711来源:国知局
计划任务单例程序的部署及运行方法、装置和系统的制作方法
【技术领域】
[0001] 本发明属于计算机技术领域,尤其涉及一种计划任务单例程序的部署及运行方 法、装置和系统。
【背景技术】
[0002] 后台程序中有很多需要定时执行的计划任务(Crontab)单例程序。Crontab是Unix 和Linux用于设置周期性被执行的指令,是互联网领域的常用技术,很多任务都会设置在 Crontab循环执行,如果不使用Crontab,那么该任务就是常驻程序,这对程序的要求比较 高,一个是要求程序24 X 7小时不宕机,一个是要求调度程序比较可靠;而在实际工作中, 90%的程序都没有必要花费过多时间和精力去解决上述两个问题,只需编辑程序的业务逻 辑而通过Crontab这个工业级程序去调度即可,Crontab毫无疑问的具备可靠性和健壮性。
[0003] 计划任务单例程序受到单例的条件约束,不允许同时在本机或者多台服务器上启 动多个进程,而传统的分布式部署方式会使计划任务单例程序在同一时间启动多个进程, 因此计划任务单例程序无法直接采用传统的分布式部署方式,否则会导致数据写入重复等 问题。受此限制,计划任务单例程序通常采用的是单机部署方式。
[0004] 现有针对计划任务单例程序的单机部署方式有驳于高可用的架构设计,当出现自 然或人为灾害等原因导致服务器宕机时,无法自动进行业务降级,导致业务功能缺失。

【发明内容】

[0005] 有鉴于此,本发明提供一种计划任务单例程序的部署及运行方法、装置和系统,用 以使计划任务单例程序实现高可用性,当服务器宕机时可以实现业务自动降级。
[0006] 为了实现上述目的,本发明提供一种计划任务单例程序的部署方法,所述计划任 务单例程序需要部署的业务服务器包括至少两台,所述部署方法包括:
[0007] 按照所述计划任务单例程序的执行时间,为每一台业务服务器配置不同的执行所 述计划任务单例程序的触发时间;
[0008] 根据所述计划任务单例程序的循环周期,为每一台业务服务器配置进程的最大执 行时长,所述进程的最大执行时长小于所述计划任务单例程序的循环周期。
[0009] 进一步地,上述部署方法还可具有以下特点,按照所述计划任务单例程序的执行 时间,为每一台业务服务器配置不同的执行所述计划任务单例程序的触发时间,具体包括:
[0010] 按照计划任务单例程序的执行时间,配置各台业务服务器按照设定次序轮流执行 所述计划任务单例程序。
[0011] 进一步地,上述部署方法还可具有以下特点,所述业务服务器包括两台;以及
[0012] 按照计划任务单例程序的执行时间,配置各台业务服务器按照设定次序轮流执行 所述计划任务单例程序,具体包括:
[0013] 按照计划任务单例程序的执行时间,配置该两台业务服务器错时交替执行所述计 划任务单例程序。
[0014] 基于同一技术构思,本发明还提供了一种计划任务单例程序的部署装置,包括:
[0015] 触发时间配置模块,用于按照所述计划任务单例程序的执行时间,为每一台业务 服务器配置不同的执行所述计划任务单例程序的触发时间,所述计划任务单例程序需要部 署的业务服务器包括至少两台;
[0016] 执行时长配置模块,用于根据所述计划任务单例程序的循环周期为每一台业务服 务器配置进程的最大执行时长,所述进程的最大执行时长小于所述计划任务单例程序的循 环周期。
[0017] 进一步地,上述部署装置还可具有以下特点,所述触发时间配置模块,具体用于按 照计划任务单例程序的执行时间,配置各台业务服务器按照设定次序轮流执行所述计划任 务单例程序。
[0018] 进一步地,上述部署装置还可具有以下特点,所述业务服务器包括两台;以及
[0019] 所述触发时间配置模块,具体用于按照计划任务单例程序的执行时间,配置该两 台业务服务器错时交替执行所述计划任务单例程序。
[0020] 基于同一技术构思,本发明还提供了一种计划任务单例程序的运行系统,包括计 划任务单例程序的部署装置和至少两台计划任务单例程序需要部署的业务服务器,其中:
[0021] 所述部署装置,用于按照所述计划任务单例程序的执行时间,为每一台业务服务 器配置不同的执行所述计划任务单例程序的触发时间,并根据所述计划任务单例程序的循 环周期为每一台业务服务器配置进程的最大执行时长;
[0022] 每一台业务服务器,用于在配置的触发时间到达时,启动进程执行所述计划任务 单例程序,所述进程的最大执行时长小于所述计划任务单例程序的循环周期。
[0023] 进一步地,上述运行系统还可具有以下特点,所述部署装置,具体用于按照计划任 务单例程序的执行时间,配置各台业务服务器按照设定次序轮流执行所述计划任务单例程 序。
[0024] 进一步地,上述运行系统还可具有以下特点,所述业务服务器包括两台;以及
[0025] 所述部署装置,具体用于按照计划任务单例程序的执行时间,配置该两台业务服 务器错时交替执行所述计划任务单例程序。
[0026] 基于同一技术构思,本发明还提供了一种计划任务单例程序的运行方法,所述计 划任务单例程序需要部署的业务服务器包括至少两台,所述运行方法包括:
[0027] 按照所述计划任务单例程序的执行时间,为每一台业务服务器配置不同的执行所 述计划任务单例程序的触发时间;并
[0028] 根据所述计划任务单例程序的循环周期,为每一台业务服务器配置进程的最大执 行时长;
[0029] 每一台业务服务器在配置的触发时间到达时,启动进程执行所述计划任务单例程 序,所述进程的最大执行时长小于所述计划任务单例程序的循环周期。
[0030] 本发明提供的计划任务单例程序的部署及运行方法、装置和系统,将计划任务单 例程序分布式部署在至少两台业务服务器中,并为每一台业务服务器配置不同的触发时 间,以保证不会发生同一时间启动多个相同进程的情况。并且,配置进程的最大执行时长小 于计划任务单例程序的循环周期,以确保不会发生某台业务服务器启动进程时,其它业务 服务器进程尚未退出的情况。本方案既采用了分布式部署方式,又同时兼顾了计划任务单 例程序不允许启动多个进程的特点,可以使计划任务单例程序实现高可用性。当其中一台 业务服务器宕机时,只会在某些触发时间不启动进程,其它业务服务器配置的触发时间仍 然会按时执行,从而实现业务自动降级的目的,保障业务功能。
[0031] 本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变 得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明 书、权利要求书、以及附图中所特别指出的结构来实现和获得。
【附图说明】
[0032] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。附图用来提供对本发明的进一步理解,并且构成说明书的 一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
[0033] 图1是本发明实施例中计划任务单例程序的部署方法流程图;
[0034]图2是本发明实施例中计划任务单例程序的部署装置框图;
[0035] 图3是本发明实施例中计划任务单例程序的运行系统框图;
[0036] 图4是本发明实施例中计划任务单例程序的运行方法流程图。
【具体实施方式】
[0037] 本发明实施例提供一种计划任务单例程序的部署及运行方法、装置和系统,采用 分布式部署方式同时兼顾计划任务
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1