• XXL-JOB快速入门


    概述
    ​ 首先我们要知道什么是XXL-JOB

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

    XXL-JOB是一个分布式任务调度平台,具有以下特性:

    1. 分布式任务调度:XXL-JOB支持将任务分布到多台服务器上进行执行,实现任务的分布式调度和负载均衡。

    2. 定时任务管理:XXL-JOB提供了方便的定时任务管理功能,可以设置任务的执行时间、执行间隔和重试次数等参数。

    3. 任务监控和日志:XXL-JOB提供了任务执行监控和日志查看功能,可以实时查看任务的执行情况和日志输出。

    4. 分片广播任务:XXL-JOB支持将一个任务分片执行,将任务拆分成多个子任务并分发到不同的执行器上并行执行。

    5. 失败重试和报警:XXL-JOB支持任务的失败重试机制,可以设置任务失败后的重试次数和重试间隔,并支持任务失败时发送报警通知。

    6. 动态调度:XXL-JOB支持动态添加、修改和删除任务,可以通过接口或页面进行任务的动态管理。

    7. 执行器管理:XXL-JOB提供了执行器管理功能,可以方便地管理和监控执行器的状态和健康情况。

    8. 跨平台支持:XXL-JOB支持在Windows、Linux等不同操作系统上运行,并提供了Java、Python等多种编程语言的任务执行器。

    通过这些特性,XXL-JOB可以实现任务的分布式调度、定时任务管理和任务监控等功能,帮助提高任务执行效率和可靠性。

    是目前主流的分布式任务调度平台,许多公司的产品业务都有XXL-JOB的接入

    使用
    首先从GitHub上面将项目clone下来,如果网络问题导致速度慢也可以从Gitee上面拉取

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

    Gitee地址:https://gitee.com/xuxueli0323/xxl-job

    我是从Gitee仓库拉取

    打开IDEA克隆拉取代码 

    克隆成功后,将Maven编译好后项目结构如下

     

    然后运行自带的tables_xxl_job.sql文件,在Navcation中去运行,生成需要的表


    得到需要的基础表


    打开xxl-job-admin模块,在application.properties中进行后台的配置

    注意在数据库地址哪里加上时区属性,否则乱码

    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?Unicode=true&characterEncoding=UTF-8&serverTimezone=UTC
    


    然后我们启动XxlJobAdminApplication类,访问http://localhost:8080/xxl-job-admin

    默认账户admn,密码123456

    进来就可以看到主界面了

     

    定位到springboot模块下的jobhandler层下面

    然后我们编写一个自己的定时任务来测试

    1. package com.xxl.job.executor.service.jobhandler;
    2. import com.xxl.job.core.biz.model.ReturnT;
    3. import com.xxl.job.core.handler.IJobHandler;
    4. import com.xxl.job.core.handler.annotation.JobHandler;
    5. import org.springframework.stereotype.Component;
    6. /**
    7. * @author fueen
    8. * 编写自己的定时任务Handler
    9. * 继承IJobHandler
    10. *
    11. */
    12. @JobHandler(value = "MyJobHandler")
    13. @Component
    14. public class MyJobHandler extends IJobHandler {
    15. /**
    16. * 重写execute方法,里面执行相应的功能
    17. * @param param
    18. * @return
    19. * @throws Exception
    20. */
    21. @Override
    22. public ReturnT execute(String param) throws Exception {
    23. System.out.println("我们不能失去信仰");
    24. return SUCCESS;
    25. }
    26. }


    在任务管理里面新增任务

    然后在找到刚刚添加的任务,点击操作里面的启动

    可以看到结果,刚刚编写的代码已经被执行了

    关于XXL-JOB的基本使用就到这里了,如果在项目中去集成也很简单

    在项目中引入依赖

    1. com.xuxueli
    2. xxl-job-core
    3. 2.0.1

    将xxl-job-executor-sample-springboot这个模块下的XxlJobConfig复制一份到项目中,然后将相关配置设置好即可

  • 相关阅读:
    Linux虚拟网络设备—Veth Pair
    [Rust GUI]eframe(egui框架)代码示例
    【开发者必看】【push kit】推送服务典型问题合集3
    C++ AVL树手撕代码实现
    微信开放平台第三方开发,实现代小程序备案申请
    C++ function<>和bind()
    Cy3.5菁染料标记海藻酸钠;CY3.5-Alginate;Alginate-Y3.5
    JavaScipt:Data对象
    MyBatis 的执行流程,值得一看
    计算机视觉(CV)技术:优势、挑战与前景
  • 原文地址:https://blog.csdn.net/m0_73499047/article/details/133323997