xxl-job的介绍以及使用

前言

 在我们真实的开发当中的话肯定避免不了的都会使用定时任务那么在SpringBoot的单体的项目中使用的话第一步就是@EnableScheduling然后就是在执行定时上添加@Scheduled这个注解那么在这个注解里面就是写Corn表达式(这个就是执行的时间的设置),但是我们都知道单体架构的话就是将一个项目部署在同一个服务器但是我们现在的话几乎都是微服务项目那么肯定不能通过这个注解不然同一时间的话加入这个任务所在的服务部署在5台服务器上面的话那么这个就会使得在同一时间这个5台服务器的话都会通过执行这个任务这个肯定是我们不想看到的所以我们就是使用的就是xxl-job

简介

    xxl-job就是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用                                                              使用的场景: 就是我刚刚说的就是在用分布式环境下的定时任务的调动如:在第二天的凌晨1点统计前一天的营业额,每一个月的10号的话用于统计前一个月的营业额等等                                            GitHub的地址为:GitHub - xuxueli/xxl-job: A distributed task scheduling framework.(分布式任务调度平台XXL-JOB)

特点:

1.简单易用:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手。
2.动态管理:支持动态修改任务状态、启动/停止任务,以及终止运行中任务,即时生效。
3.调度中心HA:调度采用中心式设计,支持集群部署,可保证调度中心的高可用性。
4.执行器HA:任务分布式执行,支持集群部署,可保证任务执行的高可用性。
5.注册中心:执行器会周期性自动注册任务,调度中心将自动发现注册的任务并触发执行。
6.弹性扩容缩容:一旦有新执行器机器上线或下线,下次调度时将会重新分配任务。
7.路由策略:执行器集群部署时提供丰富的路由策略,包括第一个、最后一个、轮询、随机等。
8.故障转移:任务路由策略选择"故障转移"情况下,如果执行器集群中某一台机器故障,将会自动Failover切换到一台正常的执行器发送调度请求。
9.阻塞处理策略:调度过于密集执行器来不及处理时的处理策略,策略包括单机串行、丢弃后续调度、覆盖之前调度。
10.任务超时控制:支持自定义任务超时时间,任务运行超时将会主动中断任务。
11.任务失败重试:支持自定义任务失败重试次数,当任务失败时将会按照预设的失败重试次数主动进行重试。
12.任务失败告警:默认提供邮件方式失败告警,同时预留扩展接口,可方便的扩展短信、钉钉等告警方式。
13.分片广播任务:执行器集群部署时,任务路由策略选择"分片广播"情况下,一次任务调度将会广播触发集群中所有执行器执行一次任务,可根据分片参数开发分片任务。
14.动态分片:分片广播任务以执行器为维度进行分片,支持动态扩容执行器集群从而动态增加分片数量,协同进行业务处理。

组成以及架构:

组成的话其实就是特别的简单就是两部分:调度中心以及执行器   调度中心的作用就是在于统一管理任务调度平台上调度任务,负责触发调度执行,并且提供任务管理平台 执行器的作用就是在于接受到调度中心的调度请求然后进行执行相关的任务就行了当然还有就是说数据库里面存储的有日志的记录,任务配置等信息

整体的架构图:

使用步骤(这里的话我就是在本地进行实现来进行实现):

1.就是将其拉取到本地当中xxl-job: 一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。icon-default.png?t=O83Ahttps://gitee.com/xuxueli0323/xxl-job2.运行SQL文件

 这个SQL文件就是存在于doc目录下的db文件夹下

3.配置调度中心(xxl-job-admin):

 在xxl-job-admin模块的application.properties文件中配置数据库和其他相关参数

4.运行调度中心                                                                                                                               

启动这个SpringBoot项目之后那么就是访问http://127.0.0.1:8080/xxl-job-admin/然后就是可以看到管理平台的页面了默认的账户名就是admin密码就是123456

5.配置我们的执行器

配置的话主要就是配置执行器的服务的地址以及执行的AppName也就是名字

6.在调用中心配置执行器的信息然后允许执行器完成注册并且完成定时任务逻辑

如果使用xxl-Job完成定时任务的话那么就是通过@XxlJob然后里面写任务执行器的名字就可以了

7.配置定时任务的相关的信息

8.最终的结果的展示(这个就是我的结果的展示)

xxl-job视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值