From debbc9d278db8b964601fc5a3751ba1da288e438 Mon Sep 17 00:00:00 2001 From: "xueli.xue" Date: Fri, 12 May 2017 19:51:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BB=BB=E5=8A=A1=E6=B5=8B?= =?UTF-8?q?=E8=AF=95Demo=EF=BC=8C=E6=96=B9=E4=BE=BF=E5=9C=A8=E5=BC=80?= =?UTF-8?q?=E5=8F=91=E6=97=B6=E8=BF=9B=E8=A1=8C=E4=BB=BB=E5=8A=A1=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E6=B5=8B=E8=AF=95=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 +- .../xxl/executor/test/DemoJobHandlerTest.java | 38 +++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 xxl-job-executor-example/src/test/java/com/xxl/executor/test/DemoJobHandlerTest.java diff --git a/README.md b/README.md index 62ff0cac..79a424e4 100644 --- a/README.md +++ b/README.md @@ -836,6 +836,8 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段 - 2、失败处理策略;调度失败时的处理策略,策略包括:失败告警(默认)、失败重试; - 3、通讯时间戳超时时间调整为180s; - 4、执行器与数据库彻底解耦,但是执行器需要配置调度中心集群地址。调度中心提供API供执行器回调和心跳注册服务,取消调度中心内部jetty,心跳周期调整为30s,心跳失效为三倍心跳; +- 5、执行参数编辑时丢失问题修复; +- 6、新增任务测试Demo,方便在开发时进行任务逻辑测试; #### TODO LIST - 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限; @@ -844,7 +846,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段 - 4、失败重试优化:目前失败重试逻辑为,在本次调度请求失败后重新执行一次请求逻辑。优化点为针对调度和执行失败时均做失败重试,重试时重新触发一次完整调度,这将可能导致失败是调度死循环,考虑中。 - 5、回调失败写文件,查看日志时读文件确认,重启后回调确认; - 6、任务依赖,流程图,子任务+会签任务,各节点日志; - +- 7、调度任务优先级; ## 七、其他 diff --git a/xxl-job-executor-example/src/test/java/com/xxl/executor/test/DemoJobHandlerTest.java b/xxl-job-executor-example/src/test/java/com/xxl/executor/test/DemoJobHandlerTest.java new file mode 100644 index 00000000..d1325f73 --- /dev/null +++ b/xxl-job-executor-example/src/test/java/com/xxl/executor/test/DemoJobHandlerTest.java @@ -0,0 +1,38 @@ +package com.xxl.executor.test; + +import com.xxl.job.core.biz.ExecutorBiz; +import com.xxl.job.core.biz.model.ReturnT; +import com.xxl.job.core.biz.model.TriggerParam; +import com.xxl.job.core.enums.ExecutorBlockStrategyEnum; +import com.xxl.job.core.glue.GlueTypeEnum; +import com.xxl.job.core.rpc.netcom.NetComClientProxy; + +/** + * Created by xuxueli on 17/5/12. + */ +public class DemoJobHandlerTest { + + public static void main(String[] args) throws Exception { + + // param + String jobHandler = "demoJobHandler"; + String params = ""; + + // trigger data + TriggerParam triggerParam = new TriggerParam(); + triggerParam.setJobId(1); + triggerParam.setExecutorHandler(jobHandler); + triggerParam.setExecutorParams(params); + triggerParam.setExecutorBlockStrategy(ExecutorBlockStrategyEnum.COVER_EARLY.name()); + triggerParam.setGlueType(GlueTypeEnum.BEAN.name()); + triggerParam.setGlueSource(null); + triggerParam.setGlueUpdatetime(System.currentTimeMillis()); + triggerParam.setLogId(1); + triggerParam.setLogDateTim(System.currentTimeMillis()); + + // do remote trigger + ExecutorBiz executorBiz = (ExecutorBiz) new NetComClientProxy(ExecutorBiz.class, "127.0.0.1:9999").getObject(); + ReturnT runResult = executorBiz.run(triggerParam); + } + +}