一种分布式脚本控制方法及相关装置制造方法及图纸

技术编号:27935254 阅读:20 留言:0更新日期:2021-04-02 14:15
本申请公开了一种分布式脚本控制方法及相关装置,方法包括:通过第一控制脚本从预置数据库中定时获取脚本控制信息,脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数;基于脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径;基于更新后的本地Crontab文件,通过第二控制脚本根据运行时间计划为运行脚本机器对应的目标脚本配置目标运行参数,并运行目标脚本,目标运行参数包括脚本运行环境参数和日志输出路径。本申请能够解决现有技术人工设置定时易失误、定时任务执行不灵活以及日志管理不统一的技术问题。

【技术实现步骤摘要】
一种分布式脚本控制方法及相关装置
本申请涉及分布式系统领域,尤其涉及一种分布式脚本控制方法及相关装置。
技术介绍
目前的控制脚本定时运行的方案主要是利用Linux系统提供的Crontab命令,更新Crontab文件或者通过编程语言的定时器来达到定时运行的目的。当前技术技术方案通过手工添加定时任务的方式容易出现失误,而且定时任务不够灵活,无法高效实现执行任务的目标机器的迁移,另外,不能有效地统一管理日志记录。
技术实现思路
本申请提供了一种分布式脚本控制方法及相关装置,用于解决现有技术人工设置定时易失误、定时任务执行不灵活以及日志管理不统一的技术问题。有鉴于此,本申请第一方面提供了一种分布式脚本控制方法,包括:通过第一控制脚本从预置数据库中定时获取脚本控制信息,所述脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数;基于所述脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径;基于更新后的所述本地Crontab文件,通过第二控制脚本根据所述运行时间计划为所述运行脚本机器对应的目标脚本配置目标运行参数,并运行所述目标脚本,所述目标运行参数包括所述脚本运行环境参数和所述日志输出路径。可选的,所述通过第一控制脚本从预置数据库中定时获取脚本控制信息,之前还包括:在预置数据库的列表中插入脚本控制信息的记录行。可选的,所述基于所述脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径,包括:将从所述脚本控制信息获取的所述脚本运行环境参数,所述运行脚本机器,所述运行时间计划和所述日志输出路径拼接为Crontab运行参数;将所述Crontab运行参数写入所述本地Crontab文件中完成更新操作。可选的,所述基于更新后的所述本地Crontab文件,通过第二控制脚本根据所述运行时间计划为所述运行脚本机器对应的目标脚本配置目标运行参数,并运行所述目标脚本,还包括:在运行所述目标脚本前,根据预置redis缓存记录判断所述目标脚本是否已执行,若是,则等待脚本执行;若否,则运行所述目标脚本。本申请第二方面提供了一种分布式脚本控制装置,包括:获取信息单元,用于通过第一控制脚本从预置数据库中定时获取脚本控制信息,所述脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数;Crontab更新单元,用于基于所述脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径;脚本运行单元,用于基于更新后的所述本地Crontab文件,通过第二控制脚本根据所述运行时间计划为所述运行脚本机器对应的目标脚本配置目标运行参数,并运行所述目标脚本,所述目标运行参数包括所述脚本运行环境参数和所述日志输出路径。可选的,还包括:信息准备单元,用于在预置数据库的列表中插入脚本控制信息的记录行。可选的,所述Crontab更新单元具体用于:将从所述脚本控制信息获取的所述脚本运行环境参数,所述运行脚本机器,所述运行时间计划和所述日志输出路径拼接为Crontab运行参数;将所述Crontab运行参数写入所述本地Crontab文件中完成更新操作。可选的,还包括:运行脚本判断单元,用于在运行所述目标脚本前,根据预置redis缓存记录判断所述目标脚本是否已执行,若是,则等待脚本执行;若否,则运行所述目标脚本。本申请第三方面提供了一种分布式脚本控制设备,所述设备包括处理器以及存储器:所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;所述处理器用于根据所述程序代码中的指令执行第一方面任一项所述的分布式脚本控制方法。本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面任一项所述的分布式脚本控制方法。从以上技术方案可以看出,本申请实施例具有以下优点:本申请中,提供了一种分布式脚本控制方法,包括:通过第一控制脚本从预置数据库中定时获取脚本控制信息,脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数;基于脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径;基于更新后的本地Crontab文件,通过第二控制脚本根据运行时间计划为运行脚本机器对应的目标脚本配置目标运行参数,并运行目标脚本,目标运行参数包括脚本运行环境参数和日志输出路径。本申请提供的分布式脚本控制方法,将任务的执行相关的参数配置在预置数据库中,通过第一控制脚本获取这些信息,并以此更新Crontab文件,脚本控制信息中包括任务时间参数,因此不需要人工设置定时任务;不同机器的目标脚本也可以根据运行脚本机器IP的设置进行选择执行,不需要在针对多台机器进行多次更新操作;而且,定时更新的Crontab文件中记载的日志输出路径可以灵活配置脚本的日志输出目录,随时找到相应日志,从而实现不同目标脚本日志的统一管理。因此,本申请能够解决现有技术人工设置定时易失误、定时任务执行不灵活以及日志管理不统一的技术问题。附图说明图1为本申请实施例提供的一种分布式脚本控制方法的流程示意图;图2为本申请实施例提供的一种分布式脚本控制装置的结构示意图;图3为本申请实施例提供的分布式脚本控制系统结构示意图;图4为本申请实施例提供的分布式脚本控制信令图。具体实施方式为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。为了便于理解,请参阅图1,本申请提供的一种分布式脚本控制方法的实施例,包括:步骤101、通过第一控制脚本从预置数据库中定时获取脚本控制信息,脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数。进一步地,步骤101之前还包括:在预置数据库的列表中插入脚本控制信息的记录行。预置数据库可以是mysql数据库,它可以持久化存储脚本控制信息。第一控制脚本从预置数据库中获取脚本控制信息一般是通过缓存cache实现的,脚本控制信息首先缓存在cache中,第一控制脚本再从cache缓存中获取缓存信息。在预置数据库中插入脚本控制信息的记录行是一种动态添加或者修改信息的过程,主要通过数据库配置实现,不需要手动干预Crontab任本文档来自技高网
...

【技术保护点】
1.一种分布式脚本控制方法,其特征在于,包括:/n通过第一控制脚本从预置数据库中定时获取脚本控制信息,所述脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数;/n基于所述脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径;/n基于更新后的所述本地Crontab文件,通过第二控制脚本根据所述运行时间计划为所述运行脚本机器对应的目标脚本配置目标运行参数,并运行所述目标脚本,所述目标运行参数包括所述脚本运行环境参数和所述日志输出路径。/n

【技术特征摘要】
1.一种分布式脚本控制方法,其特征在于,包括:
通过第一控制脚本从预置数据库中定时获取脚本控制信息,所述脚本控制信息包括脚本运行参数,运行脚本机器IP列表,任务时间参数和日志输出参数;
基于所述脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径;
基于更新后的所述本地Crontab文件,通过第二控制脚本根据所述运行时间计划为所述运行脚本机器对应的目标脚本配置目标运行参数,并运行所述目标脚本,所述目标运行参数包括所述脚本运行环境参数和所述日志输出路径。


2.根据权利要求1所述的分布式脚本控制方法,其特征在于,所述通过第一控制脚本从预置数据库中定时获取脚本控制信息,之前还包括:
在预置数据库的列表中插入脚本控制信息的记录行。


3.根据权利要求1所述的分布式脚本控制方法,其特征在于,所述基于所述脚本控制信息更新本地Crontab文件,更新后的所述Crontab文件包括脚本运行环境参数,运行脚本机器,运行时间计划和日志输出路径,包括:
将从所述脚本控制信息获取的所述脚本运行环境参数,所述运行脚本机器,所述运行时间计划和所述日志输出路径拼接为Crontab运行参数;
将所述Crontab运行参数写入所述本地Crontab文件中完成更新操作。


4.根据权利要求1所述的分布式脚本控制方法,其特征在于,所述基于更新后的所述本地Crontab文件,通过第二控制脚本根据所述运行时间计划为所述运行脚本机器对应的目标脚本配置目标运行参数,并运行所述目标脚本,还包括:
在运行所述目标脚本前,根据预置redis缓存记录判断所述目标脚本是否已执行,若是,则等待脚本执行;若否,则运行所述目标脚本。


5.一种分布式脚本控制装置,其特征在于,包括:
获取信息单元,用于通过第一控制脚本从预...

【专利技术属性】
技术研发人员:吴楚明严加乔
申请(专利权)人:广州趣丸网络科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1