push 一小段优化

v1.4
xueli.xue 9 years ago
parent 49b4a46737
commit 5b8db953d6

@ -42,13 +42,16 @@ XXL-JOB是一个轻量级分布式任务调度框架其核心设计目标是
**我司大众点评目前已接入XXL-JOB内部别名《Ferrari》Ferrari基于XXL-JOB的V1.1版本定制而成新接入应用推荐升级最新版本V1.3**。自2016-01-21接入至2016-05-20为止进行统计该系统已调度40000余次表现优异。新接入应用推荐使用最新版本V1.3因为经过两个大版本的更新系统的任务模型、UI交互模型以及底层调度通讯模型都有了较大的提升核心功能更加稳定高效。
至今XXL-JOB已接入多家公司的线上产品线接入场景如电商业务O2O业务和大数据作业等截止2016-05-20为止XXL-JOB已接入的公司包括不限于
至今XXL-JOB已接入多家公司的线上产品线接入场景如电商业务O2O业务和大数据作业等截止2016-07-19为止XXL-JOB已接入的公司包括不限于
- 1、大众点评
- 2、山东学而网络科技有限公司
- 3、安徽慧通互联科技有限公司
- 4、人人聚财金服
- 5、上海棠棣信息科技股份有限公司
- 6、运满满
- 7、米其林(中国区)
- 8、妈妈联盟
- ……
欢迎大家的关注和使用XXL-JOB也将拥抱变化持续发展。
@ -253,7 +256,11 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件通过重写L
#### 4.6 版本 V1.4.0 新特性
- 1、任务依赖: 通过事件触发方式实现, 任务执行成功并回调SUCCESS时, 会主动触发一次依赖任务的调度;
- 2、调度中心任务属性调整: jobName改为系统生成, 新增任务时不需要指定;
- 2、调度中心, 新建/编辑任务, 界面属性调整:
- 2.1、"任务名JobName"属性改为系统自动生成, 任务新增/编辑界面中去除该字段: 该字段之前主要用于在 "调度中心" 唯一标示一个任务, 现实意义不大, 因此计划淡化掉该字段,改为系统生成UUID,从而简化任务新建的操作;
- 2.2、"JobHandler"属性改为系统自动生成, 更名为"JobKey", 使用时copy即可: 之前该值支持自定义,这样会出现多个调度任务调用同一个JobHandler的情况,而JobHandler在执行器是根据改值进行分组的,这就导致不同的任务存在阻塞和相互影响,因此改之;
- 2.3、"任务组" 改为 "分组";
- 2.4、"描述" 改为 "名称";
- 3、问题修复:
- 1.1、执行器jetty关闭优化,解决一处可能导致jetty无法关闭的问题;
- 1.2、执行器任务终止时,执行队列回调优化,解决一处导致任务无法回调的问题;
@ -261,6 +268,7 @@ XXL-JOB会为每次调度请求生成一个单独的日志文件通过重写L
- 1.4、执行器Jobhandler注解优化,解决一处因事务代理导致的容器无法加载JobHandler的问题;
- 1.5、远程调度优化,禁用retry策略,解决一处可能导致重复调用的问题;
Tips: V1.3.x版本已经Release稳定版本, 进入维护阶段, 地址见分支 [V1.3](https://github.com/xuxueli/xxl-job/tree/v1.3) , 新特性将会在master分支持续更新。
#### 规划中
- 2、任务执行规则自定义假如前一个任务正在执行后续调度执行规则支持自定义

@ -57,10 +57,10 @@ public class RemoteHttpJobBean extends QuartzJobBean {
params.put(HandlerParamEnum.LOG_ADDRESS.name(), XxlJobLogCallbackServer.getTrigger_log_address());
params.put(HandlerParamEnum.LOG_ID.name(), String.valueOf(jobLog.getId()));
params.put(HandlerParamEnum.EXECUTOR_HANDLER.name(), jobInfo.getExecutorHandler());
params.put(HandlerParamEnum.EXECUTOR_PARAMS.name(), jobInfo.getExecutorParam());
params.put(HandlerParamEnum.GLUE_SWITCH.name(), String.valueOf(jobInfo.getGlueSwitch()));
params.put(HandlerParamEnum.JOB_GROUP.name(), jobInfo.getJobGroup());
params.put(HandlerParamEnum.JOB_NAME.name(), jobInfo.getJobName());

@ -86,10 +86,10 @@
<th name="executorParam" >任务参数</th>
<th name="triggerTime" >调度时间</th>
<th name="triggerStatus" >调度结果</th>
<th name="triggerMsg" >调度日志</th>
<th name="triggerMsg" >调度备注</th>
<th name="handleTime" >执行时间</th>
<th name="handleStatus" >执行结果</th>
<th name="handleMsg" >执行日志</th>
<th name="handleMsg" >执行备注</th>
<th name="handleMsg" >操作</th>
</tr>
</thead>

@ -40,7 +40,7 @@ public class HandlerRepository {
*/
EXECUTOR_PARAMS,
/**
* switch of job, if open glue model
* switch of glue job: 0-no1-yes
*/
GLUE_SWITCH,
/**

@ -30,7 +30,7 @@ public class DemoJobHandler extends IJobHandler {
logger.info("XXL-JOB, Hello World.");
for (int i = 0; i < 10; i++) {
System.out.println(i);
logger.info("beat at:{}", i);
TimeUnit.SECONDS.sleep(2);
}
return JobHandleStatus.SUCCESS;

Loading…
Cancel
Save