ソースを参照

新增任务测试Demo,方便在开发时进行任务逻辑测试;

xueli.xue 8 年 前
コミット
debbc9d278
共有2 個のファイルを変更した41 個の追加1 個の削除を含む
  1. 3 1
      README.md
  2. 38 0
      xxl-job-executor-example/src/test/java/com/xxl/executor/test/DemoJobHandlerTest.java

+ 3 - 1
README.md ファイルの表示

@@ -836,6 +836,8 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
836 836
 - 2、失败处理策略;调度失败时的处理策略,策略包括:失败告警(默认)、失败重试;
837 837
 - 3、通讯时间戳超时时间调整为180s;
838 838
 - 4、执行器与数据库彻底解耦,但是执行器需要配置调度中心集群地址。调度中心提供API供执行器回调和心跳注册服务,取消调度中心内部jetty,心跳周期调整为30s,心跳失效为三倍心跳;
839
+- 5、执行参数编辑时丢失问题修复;
840
+- 6、新增任务测试Demo,方便在开发时进行任务逻辑测试;
839 841
 
840 842
 #### TODO LIST
841 843
 - 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限;
@@ -844,7 +846,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
844 846
 - 4、失败重试优化:目前失败重试逻辑为,在本次调度请求失败后重新执行一次请求逻辑。优化点为针对调度和执行失败时均做失败重试,重试时重新触发一次完整调度,这将可能导致失败是调度死循环,考虑中。
845 847
 - 5、回调失败写文件,查看日志时读文件确认,重启后回调确认;
846 848
 - 6、任务依赖,流程图,子任务+会签任务,各节点日志;
847
-
849
+- 7、调度任务优先级;
848 850
 
849 851
 ## 七、其他
850 852
 

+ 38 - 0
xxl-job-executor-example/src/test/java/com/xxl/executor/test/DemoJobHandlerTest.java ファイルの表示

@@ -0,0 +1,38 @@
1
+package com.xxl.executor.test;
2
+
3
+import com.xxl.job.core.biz.ExecutorBiz;
4
+import com.xxl.job.core.biz.model.ReturnT;
5
+import com.xxl.job.core.biz.model.TriggerParam;
6
+import com.xxl.job.core.enums.ExecutorBlockStrategyEnum;
7
+import com.xxl.job.core.glue.GlueTypeEnum;
8
+import com.xxl.job.core.rpc.netcom.NetComClientProxy;
9
+
10
+/**
11
+ * Created by xuxueli on 17/5/12.
12
+ */
13
+public class DemoJobHandlerTest {
14
+
15
+    public static void main(String[] args) throws Exception {
16
+
17
+        // param
18
+        String jobHandler = "demoJobHandler";
19
+        String params = "";
20
+
21
+        // trigger data
22
+        TriggerParam triggerParam = new TriggerParam();
23
+        triggerParam.setJobId(1);
24
+        triggerParam.setExecutorHandler(jobHandler);
25
+        triggerParam.setExecutorParams(params);
26
+        triggerParam.setExecutorBlockStrategy(ExecutorBlockStrategyEnum.COVER_EARLY.name());
27
+        triggerParam.setGlueType(GlueTypeEnum.BEAN.name());
28
+        triggerParam.setGlueSource(null);
29
+        triggerParam.setGlueUpdatetime(System.currentTimeMillis());
30
+        triggerParam.setLogId(1);
31
+        triggerParam.setLogDateTim(System.currentTimeMillis());
32
+
33
+        // do remote trigger
34
+        ExecutorBiz executorBiz = (ExecutorBiz) new NetComClientProxy(ExecutorBiz.class, "127.0.0.1:9999").getObject();
35
+        ReturnT<String> runResult = executorBiz.run(triggerParam);
36
+    }
37
+
38
+}