xxljob默认登录_xxl-job安装部署整理

XXL-JOB是一个轻量级分布式任务调度平台,分为调度中心和执行器两部分。调度中心负责管理和调度任务,执行器则接收并执行任务。搭建过程包括调度数据库初始化、源码编译、配置调度中心和执行器、集群部署以及开发第一个任务。调度中心与执行器通过回调地址通信,支持GLUE模式的任务开发,便于任务管理和日志查看。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

xxl-job github源码地址:https://github.com/xuxueli/xxl-job

xxl-job 官方文档:https://www.xuxueli.com/xxl-job/#

系统组成

调度模块(调度中心):

负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;

支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。

执行模块(执行器):

负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效;

接收“调度中心”的执行请求、终止请求和日志请求等。

架构图

xxl-job 环境搭建步骤:

1、初始化“调度数据库” "调度数据库初始化SQL脚本" 位置为:/xxl-job/doc/db/tables_xxl_job.sql

调度中心支持集群部署,集群情况下各节点务必连接同一个mysql实例,如果mysql做主从,调度中心集群节点务必强制走主库。

2、编译源码按照maven格式将源码导入IDE, 使用maven进行编译即可(这里需要注意admin和core版本最好是要一致,不然会出现调度中心调不到job笔者亲自躺坑)

源码结构如下:

xxl-job-admin:调度中心

xxl-job-core:公共依赖

xxl-job-executor:执行器Sample示例(选择合适的版本执行器,可直接使用,也可以参考其并将现有项

目改造成执行器)

xxl-job-executor-sample-spring:Spring版本,通过Spring容器管理执行器,比较通用,推荐这种

方式;

xxl-job-executor-sample-springboot:Springboot版本,通过Springboot管理执行器;

xxl-job-executor-sample-jfinal:JFinal版本,通过JFinal管理执行器;

xxl-job-executor-sample-nutz:Nutz版本,通过Nutz管理执行器

3、配置部署“调度中心”

调度中心项目:xxl-job-admin

作用:统一管理任务调度平台上调度任务,负责触发调度执行,并且提供任务管理平台。

① 修改配置文件

老版本:/xxl-job/xxl-job-admin/src/main/resources/xxl-job-admin.properties

新版本:/xxl-job/xxl-job-admin/src/main/resources/application.properties

② 部署发布到服务器

调度中心访问地址:http://localhost:8080/xxl-job-admin

(该地址执行器将会使用到,作为回调地址),

默认登录账号 “admin/123456”, 登录后运行界面如下图所示。

③ 调度中心集群(可选)

调度中心支持集群部署,提升调度系统容灾和可用性。调度中心集群部署时,几点要求和建议:

DB配置保持一致;登陆账号配置保持一致;

集群机器时钟保持一致(单机集群忽视);

建议:推荐通过nginx为调度中心集群做负载均衡,分配域名。调度中心访问、执行器回调配置、调用

API服务等操作均通过该域名进行

4、配置部署“执行器项目”

“执行器”项目:xxl-job-executor-sample-spring (提供多种版本执行器供选择,现以Spring版本为例,

可直接使用,也可以参考其并将现有项目改造成执行器)

作用:负责接收“调度中心”的调度并执行;可直接部署执行器,也可以将执行器集成到现有业务项目中。

步骤一:maven依赖

确认pom文件中引入了 “xxl-job-core” 的maven依赖;

步骤二:执行器配置

执行器配置,配置文件地址(这里配置参考官方文档配置即可):

/xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/application.properties

步骤三:执行器组件配置

执行器组件,配置文件地址:

/xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/core/config/XxlJobConfig.java

(appname字段名称可能不一样,这里官方版本说明有提到)

@Bean

public XxlJobSpringExecutor xxlJobExecutor() {

logger.info(">>>>>>>>>>> xxl-job config init.");

XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();

xxlJobSpringExecutor.setAdminAddresses(adminAddresses);

xxlJobSpringExecutor.setAppname(appname);

xxlJobSpringExecutor.setIp(ip);

xxlJobSpringExecutor.setPort(port);

xxlJobSpringExecutor.setAccessToken(accessToken);

xxlJobSpringExecutor.setLogPath(logPath);

xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);

return xxlJobSpringExecutor;

}

步骤四:部署执行器项目:

如果已经正确进行上述配置,可将执行器项目编译打部署,系统提供多种执行器Sample示例项目,选择其中一个即可,各自的部署方式如下。

xxl-job-executor-sample-springboot:项目编译打包成springboot类型的可执行JAR包,命令启动即可;

xxl-job-executor-sample-spring:项目编译打包成WAR包,并部署到tomcat中。

xxl-job-executor-sample-jfinal:同上

xxl-job-executor-sample-nutz:同上

xxl-job-executor-sample-jboot:同上

至此“执行器”项目已经部署结束。

执行器支持集群部署,提升调度系统可用性,同时提升任务处理能力。

执行器集群部署时,几点要求和建议:

执行器回调地址(xxl.job.admin.addresses)需要保持一致;执行器根据该配置进行执行器自动注册等操作。

同一个执行器集群内AppName(xxl.job.executor.appname)需要保持一致;调度中心根据该配置动态发现不同集群的在线执行器列表

5、开发第一个任务”hello world”

前提:请确认“调度中心”和“执行器”项目已经成功部署并启动;

步骤一:新建任务,登录调度中心,点击下图所示“新建任务”按钮,新建示例任务。然后,参考下面截图中任务的参数配置,点击保存。

步骤二:“GLUE模式(Java)” 任务开发:

请点击任务右侧 “GLUE” 按钮,进入 “GLUE编辑器开发界面” ,见下图。“GLUE模式(Java)” 运行模式的任务默认已经初始化了示例任务代码,

即打印Hello World。 ( “GLUE模式(Java)” 运行模式的任务实际上是一段继承自IJobHandler的Java类代码,它在执行器项目中运行,可使用

@Resource/@Autowire注入执行器里中的其他服务。

步骤三:触发执行:

请点击任务右侧 “执行” 按钮,可手动触发一次任务执行(通常情况下,通过配置Cron表达式进行任务调度触发)。

步骤四:查看日志:

请点击任务右侧 “日志” 按钮,可前往任务日志界面查看任务日志。

在任务日志界面中,可查看该任务的历史调度记录以及每一次调度的任务调度信息、执行参数和执行信息。运行中的任务点击右侧的“执行日志”按钮,可进入日志控制台查看实时执行日志

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值