前言
为了实现多系统之间任务(同步数据,发邮件,需要批量操作且耗时的后台功能)稳定运行,同时保证系统的可用时和灵活性。
解决方案
1> 问题提出
在实际业务中,经常遇到要定时或批量执行的任务( 多系统之间的数据交互,以及一些耗时功能的处理),为了便于开发和管理这些业务痛点,避免重复开发任务接口,以及对同步每个任务的执行情况有相关的记录信息,便于追踪和解决问题,需要设计和开发任务管理框架。
1>公共接口层定义任务的公共接口或方法(框架)
2>任务执行层用于执行具体的任务方法(继承框架根据实际业务自定 义)
3>任务支撑层用于定义任务执行辅助类(日志,任务配置,发邮件,数据库访问)(框架)
4>节点服务包括任务执行层和任务支撑层,是任务运行的最小单元,可以根据实际需要定义多个。
5>监控服务用于监控每个节点服务的状态并根据管理需要向节点服务发送控制指令(启动,停止,更新配置等)和安装节点服务,卸载节点服务等。(框架)
6>管理界面用于管理多个任务的界面终端,根据监控服务向节点服务发送控制指令。(框架)
框架使用总体业务逻辑:
(1)将二次开发好的任务执行层放到服务器指定目录,同时在管理界面录入相关的配置信息(节点服务名,执行间隔,执行次数,节点服务安装路径,节点服务发布路径)等。
(2)在管理界面中选择节点服务(安装,卸载,启动,停止,更新配置),点击安装服务,启动服务即可。
(3) 在管理端查看节点服务的运行日志,等