Uncode-Schedule分布式服务框架的系列文章,今天再补充一篇定时任务的管理系统。方便监控定时任务的执行状态以及手动控制。Uncode-Schedule框架本身自带有一个简单的查看定时任务的页面,但是比较简单,为了更方便全面的监控定时任务,我单独做了一个监控系统,名叫uncode-schedule-manage。本文主要介绍一下该监控系统的功能和使用方法。
功能简介
主要功能包括定时任务的执行状态查看和手动执行定时任务。
一、 首页
管理界面首页如下图,其中功能包括:
1.1. 查看集群节点服务器名称以及是否是调度节点;
1.2. 定时任务的列表,除了包含定时任务的基本信息之外,还包含每个定时任务的执行次数和最近一次的执行时间,还可以将定时任务的信息在zk中删除;
1.3. 添加定时任务的功能,可以将一个Spring bean中的方法作为定时任务添加进去。
管理界面首页 管理界面首页添加定时任务功能
二、手动执行功能
手动执行的定时任务列表如下图,再点击“执行”前需要先选择集群中的某个服务器节点,选择之后点击“执行”,弹出如下“执行任务界面”,在这个界面中需要填写要传入的方法参数,还要添加完整执行节点的url(端口+项目名称)。
使用方法
- 修改配置文件applicationContext.xml
<bean id="zkScheduleManager" class="cn.uncode.schedule.ZKScheduleManager" init-method="init">
<property name="zkConfig">
<map>
<entry key="zkConnectString" value="192.168.7.149:2181" />
<entry key="rootPath" value="/uncode/schedule" />
<entry key="zkSessionTimeout" value="60000" />
<entry key="userName" value="ScheduleAdmin" />
<entry key="password" value="password" />
<entry key="autoRegisterTask" value="true" />
<entry key="isCheckParentPath" value="true" />
<entry key="ipBlacklist" value="192.168.7.231" />
</map>
</property>
</bean>
修改其中的zk配置,首先连接字符串zkConnectString
和要监控的定时任务注册的zk一样,以及根目录、用户名和密码都要一样;然后还要将管理系统部署节点的IP地址加入到黑名单<entry key="ipBlacklist" value="192.168.7.231" />
,使其不可成为任务执行节点。
- 修改配置文件schedule.properties
uncode.schedule.server.code=1000000001
将这个值配置成最大值,使其永远不会成为调度节点。
-
使用maven打成war包,部署到tomcat即可。
-
首页地址是:
http://192.168.7.231:8089/uncode-schedule-manage/main/page
总结:有了这个管理界面就可以很方便的查看定时任务和手动执行定时任务,完美支撑Uncode-Schedule分布式定时任务框架。
网友评论