This commit is contained in:
xueli.xue 2016-10-03 19:47:49 +08:00
parent b7fa39bd51
commit eaf69f4f6d
2 changed files with 30 additions and 27 deletions

View File

@ -94,18 +94,15 @@ XXL-JOB是一个轻量级分布式任务调度框架其核心设计目标是
## 二、快速入门
#### 2.1 初始化“调度数据库”
请下载项目源码并解压,获取 "调度数据库初始化SQL脚本"(脚本文件为: 源码解压根目录\xxl-job\db\tables_xxl_job.sql) 并执行即可。
请下载项目源码并解压,获取 "调度数据库初始化SQL脚本"(脚本文件为: 源码解压根目录\xxl-job\db\tables_xxl_job.sql) 并执行即可。正常情况下,应该生成如下图所示16张表;
正常情况下,应该生成如下图所示14张表;
![输入图片说明](https://static.oschina.net/uploads/img/201607/23221308_DDW8.png "在这里输入图片标题")
![输入图片说明](https://static.oschina.net/uploads/img/201610/03192441_DoJg.png "在这里输入图片标题")
调度中心集群情况下,集群节点务必连接同一个mysql实例;如果mysql做主从,调度中心集群节点务必强制走主库;
#### 2.2 编译源码
解压源码,按照maven格式将源码导入IDE, 使用maven进行编译即可源码结构如下图所示
![输入图片说明](https://static.oschina.net/uploads/img/201607/23222522_JGCc.png "在这里输入图片标题")
- xxl-job-admin调度中心
@ -113,19 +110,22 @@ XXL-JOB是一个轻量级分布式任务调度框架其核心设计目标是
- xxl-job-executor-example执行器可直接使用该执行器也可以将现有项目改造成执行器使用
#### 2.3 配置部署“调度中心”
调度中心项目xxl-job-admin
调度中心项目xxl-job-admin
作用:统一管理任务调度平台上调度任务,负责触发调度执行。
- **A配置调度中心JDBC链接**请在下图所示位置配置jdbc链接地址链接地址请保持和 2.1章节 所创建的调度数据库的地址一致。
- **A配置调度中心JDBC链接**
请在下图所示位置配置jdbc链接地址链接地址请保持和 2.1章节 所创建的调度数据库的地址一致。
![输入图片说明](https://static.oschina.net/uploads/img/201607/23222438_wZv9.png "在这里输入图片标题")
- **B配置报警邮箱和登陆账号**:请在下图所示位置,设置自己的报警邮件发送邮箱和登陆账号密码。
- **B配置报警邮箱和登陆账号**
请在下图所示位置,设置自己的报警邮件发送邮箱和登陆账号密码。
![输入图片说明](https://static.oschina.net/uploads/img/201607/23223008_ArvZ.png "在这里输入图片标题")
- **C配置“调度中心”任务执行结果回调端口**由于“调度中心”和“执行器”部署在不同项目中“执行器”会请求该端口回调通知任务执行结果。如下图所示默认回调服务端口号为8888。此端口除非与现有端口冲突可自行修改否则可忽视
- **C配置“调度中心”任务执行结果回调端口**
由于“调度中心”和“执行器”部署在不同项目中“执行器”会请求该端口回调通知任务执行结果。如下图所示默认回调服务端口号为8888。此端口除非与现有端口冲突可自行修改否则可忽视
![输入图片说明](https://static.oschina.net/uploads/img/201607/23223301_I03k.png "在这里输入图片标题")
@ -139,27 +139,30 @@ XXL-JOB是一个轻量级分布式任务调度框架其核心设计目标是
至此“调度中心”项目已经部署成功。
#### 2.4 配置部署“执行器项目”
“执行器”项目xxl-job-executor-example
“执行器”项目xxl-job-executor-example
作用:负责接收“调度中心”的调度并执行;
- **A配置“执行器”**
![输入图片说明](https://static.oschina.net/uploads/img/201609/30142813_2Yp6.jpg "在这里输入图片标题")
1、配置01、JobHandler 扫描路径
2、配置02、执行器端口默认9999
3、配置03、GlueFactory (启用GLUE任务时才需要, 否则可删除)
4、配置04、XXL-JOB公共数据源 (启用GLUE任务, 且使用 "DbGlueLoader" 作为 "GLUE源码加载器" 时才需要, 否则可删除)
执行器端口由于“调度中心”和“执行器”部署在不同项目“调度中心”会请求该端口触发任务执行。如上图所示默认的“执行器”端口是9999如果与系统现有端口冲突可自行修改如若不冲突可忽略。
- **B配置Jdbc链接**(启用GLUE任务, 且使用 "DbGlueLoader" 作为 "GLUE源码加载器" 时才需要, 否则可忽略)
- **A配置Jdbc链接**(执行器 "DbRegistHelper" 和 "DbGlueLoader" 依赖JDBC配置; 推荐将其抽象为RPC远程服务, 可取消对JDBC的依赖)
请在下图所示位置配置jdbc链接地址链接地址请保持和 2.1章节 所创建的调度数据库的地址一致。
![输入图片说明](https://static.oschina.net/uploads/img/201607/23224042_MeRg.png "在这里输入图片标题")
- **B配置“执行器”**
![输入图片说明](https://static.oschina.net/uploads/img/201610/03194148_kn9K.jpg "在这里输入图片标题")
1、JobHandler 扫描路径
2、执行器端口 "port": 默认9999
3、执行器注册器 "registHelper": 默认使用系统提供的 "DbRegistHelper"(依赖JDBC), 推荐将其改为公共的RPC服务
3、GLUE源码加载器 "glueLoader": 默认使用系统提供的 "DbGlueLoader"(依赖JDBC), 推荐将其改为公共的RPC服务
4、XXL-JOB公共数据源 "xxlJobDataSource": 仅在启动 "DbRegistHelper" 或 "DbGlueLoader" 时才需要, 否则可删除
执行器端口由于“调度中心”和“执行器”部署在不同项目“调度中心”会请求该端口触发任务执行。如上图所示默认的“执行器”端口是9999如果与系统现有端口冲突可自行修改如若不冲突可忽略。
**部署项目**如果已经正确进行上述配置可将项目编译打war包并部署到tomcat中。
至此“执行器”项目已经部署结束。

View File

@ -22,7 +22,7 @@
<!-- DbRegistHelper, 依赖 "XXL-JOB公共数据源" -->
<bean class="com.xxl.job.core.registry.impl.DbRegistHelper" >
<!-- XXL-JOB公共数据源 -->
<property name="dataSource" ref="dataSource" />
<property name="dataSource" ref="xxlJobDataSource" />
</bean>
</property>
</bean>
@ -38,7 +38,7 @@
<!-- DbGlueLoader, 依赖 "XXL-JOB公共数据源" -->
<bean class="com.xxl.job.core.glue.loader.impl.DbGlueLoader" >
<!-- XXL-JOB公共数据源 -->
<property name="dataSource" ref="dataSource" />
<property name="dataSource" ref="xxlJobDataSource" />
</bean>
</property>
</bean>
@ -46,7 +46,7 @@
<!-- ********************************* "XXL-JOB公共数据源" 配置, 仅在启动 "DbRegistHelper" 或 "DbGlueLoader" 时才需要, 否则可删除 ********************************* -->
<!-- 配置04、XXL-JOB公共数据源 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<bean id="xxlJobDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
<property name="driverClass" value="${c3p0.driverClass}" />
<property name="jdbcUrl" value="${c3p0.url}" />
<property name="user" value="${c3p0.user}" />