当前位置: 首页 > news >正文

分布式定时任务Xxl_Job详细使用手册

看了很多网上的版本,思路描述的都不是很清晰,都只是几步操作就完成了,看效果,导致容易走入弯路(不排除是自己理解能力把),最开始以为是把admin模块集成到项目,后来测试了会,才明确是服务模块,无代码侵入,直接引用,少了很多思路明确分析,所以记录一下心得,方便后续上手

官方下载地址最新版:https://www.xuxueli.com/xxl-job/
下载项目结构示例图

在这里插入图片描述

下载项目结构如图所示,其实主要是启动admin模块

思路:类似于服务端。运行思路就是引入xxl-job-core包到需要的项目,配置好过后,就可以注册到admin服务中,通过自带的页面就可以看到对应定时任务

接下来开始操作:

第一步:在xxl-job-admin中配置自己的数据库

​ 导入sql文件: ./doc/db/tables_xxl_job.sql 到数据库

​ 有需要或者想尝试配置邮件接收异常信息可以配置 spring.mail.**

​ logback.xml中间改变日志配置路径,(可以自定义路径)

<property name="log.path" value="./logs/xxl-job-admin.log"/>

​ 就可以启动admin模块了,访问http://192.168.0.177:8080/xxl-job-admin 即可看到页面

​ 默认用户名 :admin 密码: 123456

在这里插入图片描述

第二步: 配置客户端

​ 引入jar包

        <dependency><groupId>com.xuxueli</groupId><artifactId>xxl-job-core</artifactId><version>最新版本</version></dependency>

​ 上配置:

xxl:job:admin:addresses: http://192.168.0.177:8080/xxl-job-admin   #服务器启动的 服务地址accessToken: default_tokenexecutor:# 执行器的应用名称appname: xxlJobTest# 执行器注册 [选填]:优先使用该配置作为注册地址address:# 执行器IP [选填]:默认为空表示自动获取IPip:# 执行器端口号 [选填]:小于等于0则自动获取;默认端口为9999port: 8081# 执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径;logpath: E:\\www\\ffw\\log#logpath: /data/logs/mls/job# 执行器日志文件保存天数 [选填] : 过期日志自动清理, 限制值大于等于3时生效; 否则, 如-1, 关闭自动清理功能;logretentiondays: 30

服务注入配置

@Configuration  //是否开启xxl-job定时任务,注释掉 //@Configuration 则不开启定时任务
@Data
@Slf4j
public class XxlJobConfig {@Value("${xxl.job.admin.addresses}")private String adminAddresses;@Value("${xxl.job.accessToken}")private String accessToken;@Value("${xxl.job.executor.appname}")private String appname;@Value("${xxl.job.executor.address}")private String address;@Value("${xxl.job.executor.ip}")private String ip;@Value("${xxl.job.executor.port}")private int port;@Value("${xxl.job.executor.logpath}")private String logPath;@Value("${xxl.job.executor.logretentiondays}")private int logRetentionDays;@Beanpublic XxlJobSpringExecutor xxlJobExecutor() {XxlJobHelper.log(">>>>>>>>>>> xxl-job config init.>>>>>>>>>>>");System.out.println("=============== xxl-job config init.===============");XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();xxlJobSpringExecutor.setAdminAddresses(adminAddresses);xxlJobSpringExecutor.setAppname(appname);xxlJobSpringExecutor.setAddress(address);xxlJobSpringExecutor.setIp(ip);xxlJobSpringExecutor.setPort(port);xxlJobSpringExecutor.setAccessToken(accessToken);xxlJobSpringExecutor.setLogPath(logPath);xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);return xxlJobSpringExecutor;}}

编写测试用例

@Slf4j
@Component
public class XxlJobTest{@XxlJob(value = "xxlJobTest")public void xxlJobTest() {System.out.println("---------xxlJobTest定时任务执行成功--------");}
}

启动项目即可完成,看着一下表示启动成功
在这里插入图片描述

第三步:测试用例

​ 手动创建,选择bean注入模式

在这里插入图片描述

接下来就可以执行一次,看看效果

在这里插入图片描述

相关文章:

分布式定时任务Xxl_Job详细使用手册

看了很多网上的版本&#xff0c;思路描述的都不是很清晰&#xff0c;都只是几步操作就完成了&#xff0c;看效果&#xff0c;导致容易走入弯路&#xff08;不排除是自己理解能力把&#xff09;&#xff0c;最开始以为是把admin模块集成到项目&#xff0c;后来测试了会&#xff…...

【PostgreSQL】表操作-修改表

【PostgreSQL】表操作快速链接 创建表及基础表命令 修改表 表权限 添加列 ALTER TABLE products ADD COLUMN description text;新列最初填充给定的任何默认值DEFAULT&#xff08;如果未指定子句&#xff0c;则为 null&#xff09;。 注意&#xff1a; 从 PostgreSQL 11 开始…...

【Java系列】文件操作详解

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习JavaEE的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 …...

docker-compose 安装 RocketMq

目录 1、rocketMq 官网 2、工作流程 RocketMQ集群工作流程​ 1. 启动NameServer​ 2. 启动 Broker​ 3. 创建 Topic​...

【心得】PHP反序列化高级利用(phar|session)个人笔记

目录 ①phar反序列化 ②session反序列化 ①phar反序列化 phar 认为是java的jar包 calc.exe phar能干什么 多个php合并为独立压缩包&#xff0c;不解压就能执行里面的php文件&#xff0c;支持web服务器和命令行 phar协议 phar://xxx.phar $phar->setmetadata($h); m…...

MyBatisPlus之增删改查

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 MyBatisPlus之增删改查 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、什么是Mybati…...

pytorch03:transforms常见数据增强操作

目录 一、数据增强二、transforms--Crop裁剪2.1 transforms.CenterCrop2.2 transforms.RandomCrop2.3 RandomResizedCrop2.4 FiveCrop和TenCrop 三、transforms—Flip翻转、旋转3.1RandomHorizontalFlip和RandomVerticalFlip3.2 RandomRotation 四、transforms —图像变换4.1 t…...

blob文件流前端显示pdf

首先请求需要修改 responseType: ‘blob’, 需要修改 请求头 {responseType: blob,url: url,method: get,}三种方法&#xff1a; 1.直接处理&#xff0c;在新页面打开 const blob new Blob([data],{ type:application/pdf }) let url window.URL.createObjectURL(blob) wi…...

Android 接入第三方数数科技平台

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、数数科技平台是什么&#xff1f;二、使用步骤1.集成SDK2. 初始化3. 发送事件和设置账号id4. 验证发送事件是否成功 小结 前言 一个成熟的App必然不可缺少对…...

LVM和磁盘配额

一&#xff1a;LVM概述&#xff1a; LVM 是 Logical Volume Manager 的简称&#xff0c;译为中文就是逻辑卷管理。 能够在保持现有数据不变的情况下&#xff0c;动态调整磁盘容量&#xff0c;从而提高磁盘管理的灵活性 /boot 分区用于存放引导文件&#xff0c;不能基于LVM创建…...

uni-app uni-app内置组件

锋哥原创的uni-app视频教程&#xff1a; 2023版uniapp从入门到上天视频教程(Java后端无废话版)&#xff0c;火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版)&#xff0c;火爆更新中...共计23条视频&#xff0c;包括&#xff1a;第1讲 uni…...

C语言——格式说明符前面加修饰符

在C语言中&#xff0c;格式说明符前面可以添加一些修饰符来控制输出或输入的格式&#xff0c;主要包括宽度、精度、左对齐标志和前缀填充字符等。 1. 宽度&#xff08;Width&#xff09; %[width]type&#xff1a;这里的width是一个非负整数&#xff0c;表示输出字段的最小宽度…...

实验室(检验科)信息系统LIS源码,客户端:WPF+Windows Forms

lis系统源码&#xff0c;医学检验信息系统源码 LIS系统&#xff08;Laboratory Information System&#xff09;即实验室&#xff08;检验科&#xff09;信息系统&#xff0c;它将检验仪器付出的检验数据与相关信息接入计算机网络系统中&#xff0c;让患者、实验室、临床科室、…...

有道翻译web端 爬虫, js

以下内容写于2023-12-28, 原链接为:https://fanyi.youdao.com/index.html#/ 1 在输入框内输入hello world进行翻译,通过检查发出的网络请求可以看到翻译文字的http接口应该是: 2 复制下链接最后的路径,去js文件中搜索下: 可以看到这里是定义了一个函数B来做文字的翻译接口函数…...

uni-app API接口扩展组件(uni-ui)

锋哥原创的uni-app视频教程&#xff1a; 2023版uniapp从入门到上天视频教程(Java后端无废话版)&#xff0c;火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版)&#xff0c;火爆更新中...共计23条视频&#xff0c;包括&#xff1a;第1讲 uni…...

信息化和数字化的本质区别是什么?

信息化和数字化是两个概念的区别 它们有什么区别和联系呢&#xff1f;信息化&#xff1a;“业务数据化”&#xff0c;先让业务流程能被数据记录下来。信息化“业务数据化”。数字化&#xff1a;“数据业务化”&#xff0c;用已累积的业务数据去反哺优化业务流程。数字化“数据…...

发表《Nature》!美国研究团队发布可编程逻辑量子处理器

​&#xff08;图片来源&#xff1a;网络&#xff09; 近期&#xff0c;美国研究团队开发了一款可编程的逻辑量子处理器&#xff0c;并展示了可靠且可扩展的量子计算所需的关键要素&#xff0c;该成果已发表于《Nature》期刊&#xff08;doi&#xff1a;10.1038/s41586-023-06…...

CISSP 第1章:实现安全治理的原则和策略

作者&#xff1a;nothinghappend 链接&#xff1a;https://zhuanlan.zhihu.com/p/669881930 来源&#xff1a;知乎 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 CIA CIA 三性&#xff1a; 机密性&#xff1a;和数据泄露有关。完整性…...

【并发设计模式】聊聊线程本地存储模式如何实现的线程安全

前面两篇文章&#xff0c;通过两阶段终止的模式进行优雅关闭线程&#xff0c;利用数据不变性的方式保证数据安全&#xff0c;以及基于COW的模式&#xff0c;保证读数据的安全。本篇我们来简述下如果利用线程本地存储的方式保证线程安全。 首先一个大前提就是并发问题&#xff…...

边缘计算网关:重新定义物联网数据处理

随着物联网&#xff08;IoT&#xff09;设备的爆炸式增长&#xff0c;数据处理和分析的需求也在迅速增加。传统的数据处理方式&#xff0c;将所有数据传输到中心服务器进行处理&#xff0c;不仅增加了网络负担&#xff0c;还可能导致数据延迟和安全问题。因此&#xff0c;边缘计…...

技术速递|6000 万次 Copilot 代码审查 且仍在持续增长

作者&#xff1a;Ria Gopu & David Apirian排版&#xff1a;Alan WangCopilot 代码审查如何帮助团队跟上 AI 加速带来的代码变更。自去年 4 月我们首次推出 Copilot 代码审查&#xff08;CCR&#xff09;以来&#xff0c;其使用量已增长了 10 倍&#xff0c;目前已占 GitHu…...

从‘腐蚀液’到‘设计美学’:PCB布线‘禁止直角’这条规则是怎么流行起来的?

从工艺限制到设计美学&#xff1a;PCB布线"禁止直角"规则的历史演变 在电子工程领域&#xff0c;PCB布线中"禁止直角"的规则几乎成为了一种行业圣经。从大学实验室到商业设计部门&#xff0c;新手工程师们总是被反复告诫要避免在布线中使用90度转角。但有趣…...

LumiPixel开箱即用教程:快速上手这个专为人像设计的AI创作平台

LumiPixel开箱即用教程&#xff1a;快速上手这个专为人像设计的AI创作平台 1. 认识LumiPixel&#xff1a;纯净人像创作平台 LumiPixel: Canvas Quest是一款专注于人像创作的AI视觉平台&#xff0c;它将先进的Z-Image扩散模型与复古像素艺术美学完美结合。这个平台特别适合需要…...

抖音无水印视频批量下载全攻略:技术解析与实战指南

抖音无水印视频批量下载全攻略&#xff1a;技术解析与实战指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support.…...

从Dify到Coze再回来:一个后端开发用Gin+Swagger构建AI工作流的踩坑实录

从Dify到Coze再回来&#xff1a;一个后端开发用GinSwagger构建AI工作流的踩坑实录 作为一名长期使用Gin框架的后端开发者&#xff0c;当我第一次尝试将现有服务接入Dify平台构建AI工作流时&#xff0c;本以为会是一次顺畅的旅程。毕竟&#xff0c;我们的API已经通过Swagger 2.0…...

计算机毕业设计springboot基于Web的健身会员管理系统 基于SpringBoot的健身房智能化运营服务平台 SpringBoot框架下的健身俱乐部会员服务与课程预约系统

计算机毕业设计springboot基于Web的健身会员管理系统e7cr4n62&#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。 随着全民健身意识的提升和健康管理需求的日益增长&#xff0c;传统…...

京东抢购自动化全攻略:从入门到精通的技术实践指南

京东抢购自动化全攻略&#xff1a;从入门到精通的技术实践指南 【免费下载链接】JDspyder 京东预约&抢购脚本&#xff0c;可以自定义商品链接 项目地址: https://gitcode.com/gh_mirrors/jd/JDspyder 30秒快速评估&#xff1a;你是否需要JDspyder&#xff1f; 在决…...

从 Seata 1.x 升级到 2.0.0:Docker 环境下的平滑迁移与配置变更指南

从 Seata 1.x 升级到 2.0.0&#xff1a;Docker 环境下的平滑迁移与配置变更指南 分布式事务框架 Seata 2.0.0 版本带来了多项架构优化与功能增强&#xff0c;包括对 Raft 共识算法的原生支持、安全模块的全面升级以及配置管理机制的改进。对于已在生产环境部署 Seata 1.x 版本的…...

【Linux】深入理解进程调度:从nice值到实时优先级(RT Priority)的进阶指南

1. Linux进程调度基础&#xff1a;从nice值说起 第一次接触Linux进程调度时&#xff0c;我被那个叫"nice值"的概念搞懵了。为什么用"nice"这个词&#xff1f;后来才明白&#xff0c;这个命名其实很形象——越"nice"的进程越谦让&#xff0c;愿意…...

【DeepSeek-R1背后的技术】系列七:冷启动——从“零”到“一”的智能启蒙

1. 冷启动&#xff1a;AI模型的"启蒙教育" 想象一下&#xff0c;你面前站着一个刚出生的婴儿&#xff0c;他对这个世界一无所知。如果你直接把他扔进大学课堂&#xff0c;会发生什么&#xff1f;他可能会哭闹、听不懂任何内容&#xff0c;甚至产生恐惧心理。这就是一…...