调度程序设计文档

调度程序设计文档

ID:42856305

大小:206.24 KB

页数:5页

时间:2019-09-22

调度程序设计文档_第1页
调度程序设计文档_第2页
调度程序设计文档_第3页
调度程序设计文档_第4页
调度程序设计文档_第5页
资源描述:

《调度程序设计文档》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、调度程序设计文档调度程序设计文档11功能描述22逻辑架构22.1整体架构2Schedulermaster模块3Jobrunner模块43数据库模型4任务配置表SCH_TASK_INFO_CONF4任务依赖关系表SCH_TASK_RELA_CONF5参数配置表SCH_TASK_PARA_CONF5远程主机信息SCH_REMOTE_INFO_CONF54视图界面51功能描述调度程序用于触发特定程序的执行。触发模式包括:定吋触发、依赖关系触发和消息触发:*定时触发采用标准Crontab模型,支持分钟、小时、日、月、周的定时

2、配置;*依赖关系触发支持一对一、一对多、多对一、多对多的触发模式;*消息触发以发送消息到调度程序触发特定任务。2逻辑架构2.1整体架构调度程序由Schedulermaster和Jobrunner两部分组成。Schedulermaster负责解析Crontab表达式、维护依赖关系图、接受消息,待特定任务执行条件到达后通知Jobrunner开始执行具体任务。Jobrunner负责接受耍执行的任务消息,然后登陆任务程序所在主机(采用ssh登陆方式)执行相应脚本。Jobrunner可以与Schedulermaster部署在同

3、一台机器,也可以部署到其他机器。也可以有多个Jobrunner终端。它们之间采用socket方式通信。2.2Schedulermaster模块SocketserverSchedulermaster有五个模块:Crontab表达式解析器CrontabparserCrontab解析器采用标准linux的crontab语法。到达时间点后解析器会发出任务启动事件到事件处理器。Crontabparser与Eventhandler之间釆用API调用方式通信。<2>消息触发器MStriggerMStrigger接受来自外部系

4、统的消息事件,处理成Eventhandler可以接收的格式后发出。两者采用API调用方式通信。<3>事件处理器Eventhandler事件处理器负责将对应的事件映射到DAG屮的任务节点,然后触发后续流程。其本身相当于整个程序的通信枢纽。v4>有向五环图DAGDAG区域负责维护系统中所有任务依赖关系,与Eventhandler协作完成对外响应。例如:当Eventhandler接受到任务1执行完毕的事件后通知DAG,DAG模块会反馈下个任务为任务3.<5>套接字服务端Socketserver负责Schedulermast

5、er与Jobrunner之间的通信。其本身有鉴权功能,客户端连接时需耍发送鉴权信息。Socketserver会及时快速地将Eventhandler生成的任务执行消息发送至客户端。2.2Jobrunner模块MessageSocketdientSocketdientMessagehandlerControllerOthersProcrunnerShellrunnerhandlerControllerRunnersJobrunner有四个模块:vl>套接字客户端Socketclient负责向Schedulermaster

6、发送和接受消息串。<2>消息处理器Messagehandler负责将接收到的消息串转换成标准格式,放入队列Queue中,Queue是线程安全的。<3>控制中心ControllerController是Jobrunner的核心部分,负责从Queue中取出消息,并判断该由哪种runner执行任务。消息中包含脚本位置,参数等信息。<4>任务执行引擎Runners目前调度支持两种脚本:shell和oracle存储过程。丿匸续还可以添加其他runnero3数据库模型3.1任务配置表SCH_TASKJNFO_CONF任务配置表关

7、键字段:任务标识(taskJd)^任务名称(task_name)>任务类型(task_type)、执行计划标识(crontab_id)>远程主机标识(remote_id)任务标识是任务配置表的业务主键,用以唯一表示一个任务;任务类型分shell任务和存储过程任务等类型;任务执行计划标识是外键,Crontab表达式表的主键,用以表示该任务的执行计划,如果为0则表示该任务由依赖关系触发;远程主机标识是外键,表示任务的位置。3.2任务依赖关系表SCH_TASK_RELA_CONF任务依赖表关键字段:前置任务标识(task_

8、id_a).后置任务标识(task_id_z)2.3参数配置表SCH_TASK_PARA_CONF参数配置表关键字段:任务标识(task_id)>参数标识(param_order)>参数名称(param_name)^参数值(param_value)参数配置表是纵表,不同任务的参数类型和数量不同。其中参数标识为任务标识下的参数顺序,参数值可以是常

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。