更新MD
This commit is contained in:
parent
127dcb040e
commit
6fbdb63951
|
@ -7,6 +7,8 @@ git.osc地址:http://git.oschina.net/xuxueli0323/xxl-job
|
||||||
|
|
||||||
技术交流群(仅作技术交流):367260654
|
技术交流群(仅作技术交流):367260654
|
||||||
|
|
||||||
|
[![image](http://pub.idqqimg.com/wpa/images/group.png)](http://shang.qq.com/wpa/qunwpa?idkey=4686e3fe01118445c75673a66b4cc6b2c7ce0641528205b6f403c179062b0a52)
|
||||||
|
|
||||||
# 特点:集群任务调度管理
|
# 特点:集群任务调度管理
|
||||||
1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;
|
1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;
|
||||||
2、动态:支持动态修改任务状态,动态暂停/恢复任务,即时生效;
|
2、动态:支持动态修改任务状态,动态暂停/恢复任务,即时生效;
|
||||||
|
|
Binary file not shown.
|
@ -29,39 +29,15 @@
|
||||||
<section class="content">
|
<section class="content">
|
||||||
<div class="callout callout-info">
|
<div class="callout callout-info">
|
||||||
<h4>简介:XXL_JOB</h4>
|
<h4>简介:XXL_JOB</h4>
|
||||||
<p>基于quartz封装实现的的集群任务调度管理平台.</p>
|
<br>
|
||||||
<p></p>
|
|
||||||
</div>
|
|
||||||
<div class="callout callout-default">
|
|
||||||
<h4>特点:</h4>
|
|
||||||
<p>1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手.</p>
|
|
||||||
<p>2、动态:支持动态修改任务状态,动态暂停/恢复任务,即时生效.</p>
|
|
||||||
<p>3、集群:任务信息持久化到mysql中,支持Job服务器集群(高可用),一个任务只会在其中一台服务器上执行.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="callout callout-default">
|
|
||||||
<h4>分层模型:</h4>
|
|
||||||
<p>1、基础:基于quartz封装底层调度层,通过CORN自定义任务执行周期,最终执行自定义JobBean的execute方法,如需多个任务,需要开发多个JobBean实现.</p>
|
|
||||||
<p>2、分层:上述基础调度模型存在一定局限,调度层和任务层耦合,当新任务上线势必影响任务的正常调度,因此规划将调度系统分层为:调度层 + 任务层 + 通讯层.</p>
|
|
||||||
<p>
|
<p>
|
||||||
<div class="row">
|
<a target="_blank" href="https://github.com/xuxueli/xxl-job">github地址</a><br><br>
|
||||||
<div class="col-xs-offset-1 col-xs-11">
|
<a target="_blank" href="http://git.oschina.net/xuxueli0323/xxl-job">git.osc地址</a><br><br>
|
||||||
<p>》调度模块:维护任务的调度信息,负责定时/周期性的发出调度请求.</p>
|
<a target="_blank" href="http://www.cnblogs.com/xuxueli/p/5021979.html">博客地址(内附使用教程)</a><br><br>
|
||||||
<p>》任务模块:具体的任务逻辑,负责接收调度模块的调度请求,执行任务逻辑.</p>
|
<a >技术交流群(仅作技术交流):367260654</a>
|
||||||
<p>》通讯模块:负责调度模块和任务模块之间的通讯.</p>
|
<a target="_blank" href="http://shang.qq.com/wpa/qunwpa?idkey=4686e3fe01118445c75673a66b4cc6b2c7ce0641528205b6f403c179062b0a52"><img border="0" src="http://pub.idqqimg.com/wpa/images/group.png" alt="《xxl-javaer》" title="《xxl-javaer》"></a>
|
||||||
<p>(总而言之,一条完整任务由 “调度信息” 和 “任务信息” 组成.)</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
<p></p>
|
||||||
|
|
||||||
<div class="callout callout-default">
|
|
||||||
<h4>调度属性解析 : 发出HTTP调度请求</h4>
|
|
||||||
<p>1、调度Key【必填】:调度信息的全局唯一标识.</p>
|
|
||||||
<p>2、调度Corn【必填】:调度执行的时间表达式.</p>
|
|
||||||
<p>3、调度描述【必填】:调度的简述.</p>
|
|
||||||
<p>4、调度URL【必填】:调度执行时发出HTTP请求的目标URL地址.</p>
|
|
||||||
<p>5、+args【选填】:调度执行时发出HTTP请求的附带的POST参数.</p>
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<!-- /.content -->
|
<!-- /.content -->
|
||||||
|
|
|
@ -1,13 +1,10 @@
|
||||||
package com.xxl.job.service.handler;
|
package com.xxl.job.service.handler;
|
||||||
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import com.xxl.job.client.handler.IJobHandler;
|
import com.xxl.job.client.handler.IJobHandler;
|
||||||
import com.xxl.job.client.handler.IJobHandler.JobHandleStatus;
|
|
||||||
import com.xxl.job.client.handler.annotation.JobHander;
|
import com.xxl.job.client.handler.annotation.JobHander;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -21,17 +18,8 @@ public class DemoJobHandler extends IJobHandler {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public JobHandleStatus handle(String... params) throws Exception {
|
public JobHandleStatus handle(String... params) throws Exception {
|
||||||
logger.info(" ... params:" + params);
|
logger.info("XXL-JOB, Hello World.");
|
||||||
for (int i = 0; i < 5; i++) {
|
|
||||||
TimeUnit.SECONDS.sleep(1);
|
|
||||||
logger.info("handler run:{}", i);
|
|
||||||
}
|
|
||||||
return JobHandleStatus.SUCCESS;
|
return JobHandleStatus.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
System.out.println(DemoJobHandler.class.getName());
|
|
||||||
System.out.println(JobHandleStatus.class);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue