前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >springboot整合xxl-job分布式定时任务【图文完整版】

springboot整合xxl-job分布式定时任务【图文完整版】

作者头像
掉发的小王
发布于 2022-09-23 05:01:27
发布于 2022-09-23 05:01:27
1.2K00
代码可运行
举报
文章被收录于专栏:小王知识分享小王知识分享
运行总次数:0
代码可运行

一、前言

定时任务有很多种,有一些大的框架也有一些简单的实现。 比如常见的:

  • JDK的Timer和TimerTask
  • Quartz异步任务调度框架
  • 分布式定时任务XXL-JOB
  • Spring Task注解@Scheduled

小编也就知道这些,欢迎大佬补充哈!!

今天小编就以现在比较火的分布式定时任务xxl-job,优点比较轻量级,但是从21年到现在没有比较大的更新! 现在最新的好像是2.4.0

二、xxl-job介绍

XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用

它是美团大佬:许雪里开发出来的!

本篇以实践教学为主,介绍大家感兴趣可以去官方文档去看看!

xxl-job文档

总体架构图:

==大家自行拉去最新代码即可==:

项目地址

三、修改配置

1. 运行sql文件

导出到本地数据库

XXL-JOB调度模块基于自研调度组件并支持集群部署,调度数据库表说明如下:

  • xxl_job_lock:任务调度锁表;
  • xxl_job_group:执行器信息表,维护任务执行器信息;
  • xxl_job_info:调度扩展信息表: 用于保存XXL-JOB调度任务的扩展信息,如任务分组、任务名、机器地址、执行器、执行入参和报警邮件等等;
  • xxl_job_log:调度日志表: 用于保存XXL-JOB任务调度的历史信息,如调度结果、执行结果、调度入参、调度机器和执行器等等;
  • xxl_job_log_report:调度日志报表:用户存储XXL-JOB任务调度日志的报表,调度中心报表功能页面会用到;
  • xxl_job_logglue:任务GLUE日志:用于保存GLUE更新历史,用于支持GLUE的版本回溯功能;
  • xxl_job_registry:执行器注册表,维护在线的执行器和调度中心机器地址信息;
  • xxl_job_user:系统用户表;

2. 修改xxl-job-admin配置

小编修改了一下端口号:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server.port=8087

记得调整成自己的数据库密码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
spring.datasource.password=root

由于sql文件导入的直接是个数据库,不需要我们在调整数据库的名称!

3. 需修改xxl-job-executor-sample-springboot配置

小编这里修改了端口号:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server.port=8086

第11行:修改为admin的端口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
xxl.job.admin.addresses=http://127.0.0.1:8087/xxl-job-admin

第22行:小编9999端口被占用,修改了一下端口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
xxl.job.executor.port=9998

4. 添加自己的定时任务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@XxlJob("testJobHandler")
public void testJobHandler() throws Exception {
    for (int i = 0; i < 5; i++) {
        XxlJobHelper.log("这是第" + i + 1 + "条日志!");
        System.out.println("这是第" + i + 1 + "次看到我了!");
    }
    System.out.println("定时任务结束!!");
}

四、运行项目

1. 启动项目

2. 登录

根据上一步的配置,我们直接端口号加服务名字进行访问:

http://localhost:8087/xxl-job-admin/

账号:admin 密码:123456

3. xxl-job的好处

自己写完的定时任务,可以交给这个管理,这样什么时候运行,定时任务的执行规则,都可以在可视化的界面进行管理和操作,更加的人性化!可以动态的修改cron表达式,还有日志执行情况,这是真的香啊!!

4. 查看执行器获取网址

默认已经把springboot整合上来了,如果大家是自己新建的模块可以新增一条,让管理器管理咱们自己项目的定时任务,也就是使用@XxlJob的任务!

5. 新增任务管理

这里比较智能,一些基本的cron表达式都可以帮你写,非常的人性!! ==JobHandler==:填@XxlJob里面的名字即可,小编这里是:@XxlJob("testJobHandler"),所以是testJobHandler

6. 执行任务

我们这次执行一次,看看控制台是否打印记录,看看我们写的任务是否执行了!!

任务参数随便输入,机器地址为:http://192.168.1.207:9998/,第4步查看的,也就是管理端的地址加端口!!

7. 执行成功

我们看到方法成功被执行了!!

8. 查看日志

五、总结

大家看到我的日志还是有执行失败的,原因是开始端口被占用,没有注意,一直在测试,一直失败!! 大家运行后一定看看控制台有没有报错,如果是java.net.BindException: Address already in use: bind 那就是端口号被占用,换一个就行了!! 也可以看看小编这篇文章,详细解决了这个问题!!

Address already in use: bind【已解决】

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-08-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
红帽下查看HBA卡的信息
HBA卡主要用于安装在服务器上,连接到光纤交换机,或者也可以直联到存储,在存储和服务器之间形成FC SAN。现在HBA卡的速率一般为8GB、16GB,32G。一张卡上一般有一个或者两个网口,HBA卡的厂商一般有Qlogic和Emulex。在具体使用时,服务器一般是安装两块HBA卡,从两块卡上在连接到光纤交换机,确保安全性。
用户10312993
2023/01/18
4K0
PowerEdge MX搭个SAN网络?So easy~
在之前的系列文章中,我们已经介绍了PowerEdge MX的超融合实现和未来支持的“可组合架构”,作为融合主流架构之一,SAN网络存储优点多多,部署起来却并不容易。
用户6543014
2019/10/25
1.1K0
PowerEdge MX搭个SAN网络?So easy~
博科300 光纤交换机的配置
二、基本配置 1、配置IP、修改用户密码 a.新的光纤交换机默认ip为:10.77.77.77,需直连配置ip
全栈程序员站长
2022/08/26
2.9K0
博科300 光纤交换机的配置
新三网融合——计算存储与网络
网络转发设备用于传输流量,不同类型的流量对网络的需求是不同的。数据中心中有三大类资源,计算、存储和网络,之前讲过的数据网络都是用来传输用户到用户的应用流量的,这类流量对于网络的容忍度比较高,丢包多一点、时延高一点或者抖动大一点都没什么关系,以太网+TCP/IP的协议栈基本上统治了数通网络领域,而这套协议栈用于存储资源间或者是计算资源间的通信却很不合适。存储业务对于丢包几乎是零容忍的(想想你存了一大笔钱,然而在银行数据库写存储时,账户上的数字少了个0会是个多大的灾难),而以太网和IP都是尽力而为的,传输控制需
SDNLAB
2018/04/02
2K0
新三网融合——计算存储与网络
光纤交换机划分zone方法
help命令提示你如何操作。zonehelp提示你如何操作zone。zonecreate命令创建zone。命令如下:zonecreate”zone_name”,”number;number”。
全栈程序员站长
2022/08/26
1.5K0
光纤交换机zone配置
1、命令 cat /sys/class/fc_host/host[N]/port_state,显示online则证明链路状态正常
全栈程序员站长
2022/08/25
2.6K0
光纤交换机zone配置
图解存储架构:NAS vs. SAN vs. DAS
NAS、SAN、DAS是常见三种存储方式,乍一看就像是英文字母的排列组合,但实际上大有不同。这就好比一个女孩子让你修电脑,但是她们的初衷不同,实现的方法也不同,最后的结果自然也会大相径庭。比如,有的男生修完电脑后,可能会收获一个女朋友。当然,也有可能她真的只是找你修电脑。 通过这个例子,我们来看NAS、SAN和DAS似乎是同一个原理。NAS、SAN和DAS的目的是一样的:存储。但其初衷、过程和结果是不同的。
SDNLAB
2021/12/28
5.4K0
图解存储架构:NAS vs. SAN vs. DAS
博科SAN交换机zone配置(华为SNS系列交换机为例OEM博科)[通俗易懂]
一、zone的定义 Zone是Brocade交换机上的标准功能,FC SWITCH上的Zone功能类似于以太网交换机上的VLAN功能,它是将连接在SAN网络中的设备(主机和存储),逻辑上划到为不同的区域内,使得不同区域中的设备相互间不能FC网络直接访问,从而实现网络中的设备之间的相互隔离。
全栈程序员站长
2022/08/31
5.6K0
博科SAN交换机zone配置(华为SNS系列交换机为例OEM博科)[通俗易懂]
EMC光纤交换机配置
服务器HBA连接光纤交换机,再通过光纤交换机连接EMC存储SPA、SPB控制器。需要分配存储空间的服务器HBA要求与EMC 控制器在光纤交换机上划分在同一个Zone内。如此,存储上才能识别到HBA卡WWN号,并为服务器映射Lun空间。
用户5760343
2022/05/24
1.6K0
Multipath多路径管理基础介绍与安装配置使用
工作原理: 当因为主机HBA卡、线缆、交换机或者存储设备的RAID控制器故障等原因造成一条物理路径失效时,服务器可以将通过此物理路径的I/O转移到其他正常的物理路径上面,应用程序不会觉察到这种改变,从而提高系统的可用性。
全栈工程师修炼指南
2022/09/29
14.9K0
Multipath多路径管理基础介绍与安装配置使用
OceanStor篇章5.OceanStor篇章.企业统一存储技术基本概念之多路径技术
①存储阵列与主机之间有两条路径,并映射3个LUN给主机,则在主机上生成6个SCSI设备;UltraPath(华为自研多路径软件)通过WWN判断出这6个SCSI设备来自于3个LUN,则生成了3个虚拟磁盘,每个虚拟磁盘有两个path:
ICT系统集成阿祥
2024/12/03
1000
OceanStor篇章5.OceanStor篇章.企业统一存储技术基本概念之多路径技术
博科brocade光纤交换机alias-zone的划分–>实操案例「建议收藏」
光纤交换机作为SAN网络的重要组成部分,在日常应用中非常普遍,本次将以常用的博科交换机介绍基本的配置方法。
全栈程序员站长
2022/08/31
2.5K0
博科brocade光纤交换机alias-zone的划分–>实操案例「建议收藏」
FC-SAN与IP-SAN那些事
  其实在前几年我们根本就没有讨论FC-SAN与IP-SAN优劣势的必要,因为在那个时候的存储区域网业界还是被光纤传输模式一统天下,并且在相当长的一段时间里面表现出了优异的性能、可靠性和可扩展性。但是在这几年来以来,随着IP-SAN存储设备的出现,其携便利的扩展性和低廉的价格向FC-SAN发起了一轮又一轮的冲击,现今已经成为了主要的存储使用用途之一。   那么在这个事关业务应用核心数据安全、高效传输的存储区域网到底采用何种方式搭建才能发挥应有的优势呢?本文力求从数据传输性能、传输稳定性、存储区域网的可扩展性、存储区域网设备的可靠性和SAN网络的可管理性共5个方面来对FC-SAN和IP-SAN进行一个对比。
数据库架构之美
2022/11/23
2.5K0
FC-SAN与IP-SAN那些事
一文读懂服务器的HBA卡
HBA 卡,全称主机总线适配器(Host Bus Adapter) ,是服务器与存储装置间的关键纽带,承担着输入 / 输出(I/O)处理及物理连接的重任。作为一种电路板或集成电路适配器,HBA 卡能实现服务器内部 I/O 通道与存储系统 I/O 通道的物理连接。
ICT系统集成阿祥
2025/01/17
6390
一文读懂服务器的HBA卡
存储07-存储多链路分析
假设lun0|1|2|3都可以被host01|02看到(存储内部需要做lun和主机的wwpn映射;wwwp是主机hba卡的硬件地址类似于网卡的mac地址)
大话IT架构
2020/03/31
9970
存储07-存储多链路分析
iSCSI存储的3种连接方式
我们分析了iSCSI存储的系统结构,下面来看iSCSI是如何与服务器、工作站等主机设备来连接的,也就是我们如何建立一个iSCSI网络存储系统。
py3study
2020/01/06
3.3K0
DAS / NAS / IP SAN / FC SAN区别
NAS:网络上直接挂接的存储设备,其实就是处于以太网上的一台利用NFS、CIFS等网络文件系统的文件共享服务器。
党志强
2020/02/11
6.8K0
存储基础:DAS/NAS/SAN存储类型及应用
一. 硬盘接口类型 1. 并行接口还是串行接口 (1) 并行接口,指的是并行传输的接口,比如有0~9十个数字,用10条传输线,那么每根线只需要传输一位数字,即可完成。 从理论上看,并行传输效率很高,但是由于线路上的物理原因,它的传输频率不能太高,所以实际的传输速度并不和并行度成正比,甚至可能更差。 (2) 串行接口,指的是串行传输的接口,同样是0~9十个数字,用1条传输线,那么需要传输10次,才可以完成。 从理论上看,串行传输效率不高,但是由于它的数据准确性,高频率的支持,使得传输速度可以很高。 (3) 并
小小科
2018/05/02
3.5K0
存储基础:DAS/NAS/SAN存储类型及应用
SAN、NAS、DAS是什么东西?它们之间有什么关联?
前言: 数据中心机房设备分类众多,大大小小的设备零部件及部位,都是决定着数据中心是否安全运营的基础,下面普及总结中心技术名词,SAN、NAS、DAS,是什么意思?它们之间有什么关联? (1)SAN SAN是一种储存技术,也是是千兆位速率的网络,它依托光纤通道为服务器和存储设备之间的连接提供更高的吞吐能力、支持更远的距离和更可靠的连通,SAN可以是交换式网络,也可以是共享式网络,以目前的技术,其中任何一种网络都能够提供更好的伸缩性、故障恢复和诊断信息;此外,以其中任何一种网络为基础建设SAN都不需要对现有
企鹅号小编
2018/01/09
5.4K0
SAN、NAS、DAS是什么东西?它们之间有什么关联?
虹科方案|在虚拟化环境中使用ATTO XstreamCORE®智能网桥的安全、简单SAN解决方案
在具有外部串行连接存储 (SAS) 阵列的典型直连环境中,使用 vMotion® 完成从一台 ESXi 主机到另一台主机的数据传输可能需要数小时,即使遵循了隔离 vMotion 网络的正确建议也是如此。除了常见的负载均衡迁移,vMotion 迁移虚拟机 (VM) 最关键的时间通常是主机资源关闭或处于胁迫状态时。在这些情况下,据观察,运行大约 250-400 GB大小的VM 需要30多个小时才能完成迁移。在这些环境中,避免这种情况的最佳方法是使用存储区域网络 (SAN) 技术。 在SAN环境中,这些实时vMotion迁移可能需要不到三分钟的时间,因为所有ESXi主机都连接到所有存储阵列。
虹科网络基础设施
2023/01/31
5510
虹科方案|在虚拟化环境中使用ATTO XstreamCORE®智能网桥的安全、简单SAN解决方案
相关推荐
红帽下查看HBA卡的信息
更多 >
LV.8
这个人很懒,什么都没有留下~
目录
  • 一、前言
  • 二、xxl-job介绍
  • 三、修改配置
    • 1. 运行sql文件
    • 2. 修改xxl-job-admin配置
    • 3. 需修改xxl-job-executor-sample-springboot配置
    • 4. 添加自己的定时任务
  • 四、运行项目
    • 1. 启动项目
    • 2. 登录
    • 3. xxl-job的好处
    • 4. 查看执行器获取网址
    • 5. 新增任务管理
    • 6. 执行任务
    • 7. 执行成功
    • 8. 查看日志
  • 五、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档