XXL-JOB系统化图文教程
1.背景
大纲

调度任务在系统中中经常用到,
比如
定时发送营销短信
定时检查订单状态
等等。。。。。
总之我们经常会用到定时任务
官方文档:https://www.xuxueli.com/xxl-job/
2.必须要理解的两个概念
1.我自己的理解:
调度中心:通俗的理解就是管理者,好比公交车的调度室,指挥车辆发车的。
执行器:通俗的理解就是做事情的,好比公交车司机,负责开车做事的。
2.官方概念:
调度模块(调度中心):
负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;
支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。
执行模块(执行器):
负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效;
接收“调度中心”的执行请求、终止请求和日志请求等。
2.快速入门
第一步:下载官方源码
https://github.com/xuxueli/xxl-job

第二步:初始化调度数据库
初始化需要的数据库脚本路径:/xxl-job/doc/db/tables_xxl_job.sql
初始化后的数据库如图:

第二步:启动调度中心
启动前要修改数据库地址

第三步:启动执行器

第三步:访问调度中心
http://127.0.0.1:8080/xxl-job-admin
输入默认的账号(admin)和密码(123456)
登陆成功如下图:

第五步:启动一个任务 或 点击“执行一次”
再次强调,这里必须保证 执行器已经启动,否则任务启动后执行会失败

第六步:调度日志查看

到这里,官方给出的简单案例就已经走通了;
3.创建一个新的任务
这里以创建一个bean模式的任务为例,好理解一点
第一步:在代码里添加一个自己的任务处理器

第二步:新建一个任务

第三步:启动任务

第四步:查看调度日志

搞定,自己定义的任务也在执行了!
4.自己定义一个执行器
第一步:创建一个执行器项目或者模块

执行器里面的任务代码

第二步:新建执行器

第三步:配置任务(与之前的操作一样,略)
第四步:启动(与之前的操作一样,略)
第五步:日志查看(与之前的操作一样,略)
搞定,其实只有第一步与第二步不一样,后面的都和之前的一样操作。
5.GLUE模式(Java)任务开发
步骤一:新建一个任务

第二步:在web页面编写执行代码

点击GLUE IDEA,打开web编辑页面

点击保存后,我们可以在数据库看到保存在数据库的代码

第三步:启动任务。
第四步:查看任务执行日志
搞定
6.总结
到这里我们相信xxl-job的已经入门了,常规使用也会了
如果需要集群或者使用其他的功能,看官方文档也很容易实现
7.课程演示代码与视频学习资料获取
1.博客对应的视频教程

2.官方文档
https://www.xuxueli.com/xxl-job/
3.视频资料领取,课程代码下载,加微信851298348,发送“job”。
4.如果这篇博客帮助到了您,希望您可以请作者喝杯咖啡,表示鼓励!

完美!
XXL-JOB系统化图文教程的更多相关文章
- win7下IIS的安装和配置 图文教程
转自 http://www.jb51.net/article/29787.htm 最近工作需要IIS,自己的电脑又是Windows7系统,找了下安装的方法,已经安装成功.在博客里记录一下,给需要的 ...
- 微软源代码管理工具TFS2013安装与使用详细图文教程(Vs2013)
这篇文章联合软件小编主要介绍了微软源代码管理工具TFS2013安装与使用图文教程,本文详细的给出了TFS2013的安装配置过程.使用教程,需要的朋友可以参考下 最近公司新开发一个项目要用微软的TFS2 ...
- 在虚拟机中安装红旗桌面7.0 Linux操作系统的详细图文教程
本文作者:souvc 本文出处:http://www.cnblogs.com/liuhongfeng/p/5343087.html 以下是详细的内容: 一.安装虚拟机. 安装虚拟机可以参考:在Wind ...
- 使用IntelliJ IDEA 13搭建Android集成开发环境(图文教程)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- [转] 微软源代码管理工具TFS2013安装与使用详细图文教程(Vs2013)
这篇文章联合软件小编主要介绍了微软源代码管理工具TFS2013安装与使用图文教程,本文详细的给出了TFS2013的安装配置过程.使用教程,需要的朋友可以参考下 最近公司新开发一个项目要用微软的TFS2 ...
- Windows服务器安装配置PHP7.0环境图文教程
摘自http://www.111cn.net/phper/linux-php/109865.htm Windows服务器安装配置PHP7.0环境图文教程 www.111cn.net 更新:2016-0 ...
- InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序)
InstallShield Limited Edition for Visual Studio 2013 图文教程(教你如何打包.NET程序) 标签: InstallShieldVS2013 2015 ...
- 基于VirtualBox安装Ubuntu图文教程
基于VirtualBox虚拟机安装Ubuntu图文教程 一. 下载安装VirtualBox 官网下载VirtualBox,目前版本:VirtualBox 5.1.8 for Windows hosts ...
- MapGIS6.7安装图文教程(完美破解)
mapgis安装比较简单,主要注意在安装的时候,先打开软件狗,然后再进行软件安装,一般就不会照成其他安装失败的现象,有时候安装之前没有打开软件狗也安装成功了,也有这情况,不过软件使用也需要软件狗的支持 ...
- 【简单易懂的AMV图文教程-2】VEGAS基础进阶——认识关键帧
[简单易懂的AMV图文教程-2]VEGAS基础进阶--认识关键帧 经过了上一期VEGAS基础教程的学习,相信大家都能独立完成一些比较简单的纯剪辑作品了.今天在这里为大家继续介绍VEGAS的一大基础应用 ...
随机推荐
- MySql 增、删、改、查数据库
前言 之前几天写了MySql 的GROUP BY 语句和 JOIN 语句,今天补一下创建数据库.表的语句.首先假设已经暗转好MySQL 数据库,然后创建数据库.表. 创建数据库 create data ...
- Windows无法访问vsftpd
在搭建vsftpd的时候注意放行相应的服务,注意,是服务,不是端口!! 如果你简单的--add-port放行20和21端口,那么恭喜你,就是访问不了. 正确的方法是--add-service=ftp, ...
- Docker安装InfluxDB1.x和InfluxDB2.x以及与SpringBoot整合
两者区别: 1.x 版本使用 influxQL 查询语言,2.x 和 1.8+(beta) 使用 flux 查询语法:相比V1 移除了database 和 RP,增加了bucket. V2具有以下几个 ...
- 使用 nginx 共享文件
1. 安装nginx 2. 在nginx的配置文件的server部分加上如下的配置: location /shared/ { autoindex on; autoindex_exact_size on ...
- 前端 Array.sort() 源码学习
源码地址 V8源码Array 710行开始为sort()相关 Array.sort()方法是那种排序呢? 去看源码主要是源于这个问题 // In-place QuickSort algorithm. ...
- 工控必备!NXP i.MX 8M Mini开发板规格书资料分享,高性能低功耗!
1 核心板简介 创龙科技SOM-TLIMX8-B是一款基于NXP i.MX 8M Mini的四核ARM Cortex-A53 + 单核ARM Cortex-M4异构多核处理器设计的高端工业级核心板,A ...
- SSH免登陆要点
A要登录到B,则A把自己的公钥发送给B. 涉及到RSA加密:非对称算法,即用一把公钥加密,就必须用一把对应的私钥解密:用私钥签名,就必须用公钥解签名. 签名:为了身份的防篡改. 加密:为了数据的安全性 ...
- 韦东山freeRTOS系列教程之【第五章】队列(queue)
目录 系列教程总目录 概述 5.1 队列的特性 5.1.1 常规操作 5.1.2 传输数据的两种方法 5.1.3 队列的阻塞访问 5.2 队列函数 5.2.1 创建 5.2.2 复位 5.2.3 删除 ...
- 羊城杯初赛部分misc
羊城杯初赛部分misc Ez_misc i春秋刚考过的CVE,win11截图漏洞CVE-2023-21036(acropalypse) https://github.com/frankthetank- ...
- ajax过程?
1. 创建ajax对象var xhr = new XMLHttpRequest(); 2.告诉Ajax对象要向哪发送请求,以什么方式发送 //请求方式 请求地址xhr.open('get' ...