• Xxl-job安装部署以及SpringBoot集成Xxl-job使用


    1、安装Xxl-job:

    可以使用docker拉取镜像部署和源码编译两种方式,这里选择源码编译安装。

    代码拉取地址:

    https://github.com/xuxueli/xxl-job/tree/2.1.2

    官方开发文档:

    https://www.xuxueli.com/xxl-job/#%E3%80%8A%E5%88%86%E5%B8%83%E5%BC%8F%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E5%B9%B3%E5%8F%B0XXL-JOB%E3%80%8B

    2、打开项目

    使用Maven打开项目,下载相关的jar包依赖。配置相关配置文件

    /xxl-job/xxl-job-admin/src/main/resources/application.properties

    这里可以参考官方开发文档进行配置。

    3、初始化数据库

    项目中包含数据库文件路径

    /xxl-job/doc/db/tables_xxl_job.sql

    4、打包部署项目

    使用maven进行打包,排除test。

    执行package:

    打包成功。

    5、启动编译过后的Jar包文件

    输出以上内容,xxl-job启动成功。

    调度中心访问地址:http://localhost:8080/xxl-job-admin (该地址执行器将会使用到,作为回调地址)

    默认登录账号 “admin/123456”, 登录后运行界面如下图所示。

    至此“调度中心”项目已经部署成功。如果还有其他不懂的请参考相关文档:

    https://www.xuxueli.com/xxl-job/#%E3%80%8A%E5%88%86%E5%B8%83%E5%BC%8F%E4%BB%BB%E5%8A%A1%E8%B0%83%E5%BA%A6%E5%B9%B3%E5%8F%B0XXL-JOB%E3%80%8B

    6、SpringBoot集成Xxl-job使用

    获取XxlJobConfig配置文件,参考Xxl-job源码列示:

    /xxl-job/xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/java/com/xxl/job/executor/core/config/XxlJobConfig.java
    复制代码
     maven依赖:


    com.xuxueli
    xxl-job-core
    2.1.2
    xxl-job配置文件信息:
    @Bean
    public XxlJobSpringExecutor xxlJobExecutor() { log.info(">>>>>>>>>>> xxl-job config init."); XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor(); xxlJobSpringExecutor.setAdminAddresses(adminAddresses); xxlJobSpringExecutor.setAppName(appName); xxlJobSpringExecutor.setIp(ip); xxlJobSpringExecutor.setPort(port); xxlJobSpringExecutor.setAccessToken(accessToken); xxlJobSpringExecutor.setLogPath(logPath); xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays); return xxlJobSpringExecutor; }
    @Value("${xxl.job.admin.addresses}")
    private String adminAddresses;
    @Value("${xxl.job.executor.appname}")
    private String appName;
    @Value("${xxl.job.executor.ip}")
    private String ip;
    @Value("${xxl.job.executor.port}")
    private int port;
    @Value("${xxl.job.accessToken}")
    private String accessToken;
    @Value("${xxl.job.executor.logpath}")
    private String logPath;
    @Value("${xxl.job.executor.logretentiondays}")
    private int logRetentionDays;
     
    复制代码

     设置spring boot配置application.yml文件信息:

    复制代码
    xxl:
      job:
        executor:
          #执行器app的名称,和控制台保持一致
          appname: xxl-job-executor-sample
          #有效使用该地址作为注册地址 为空使用内嵌服务地址
          address:
          #执行器IP 默认自动获取
          ip: localhost
          #执行器端口 小于等于0 自动获取 ,默认 9999 ,配置多个执行器时,需要配置不同的执行器端口
          port: 9999
          #执行器日志保持天数 -1永久生效
          logretentiondays: 30
          #执行器日志文件保持地址 ,为空使用默认保存地址
          logpath: D:/idea-project/data/xxl-job-log/executor
        admin:
          #调度中心部署地址,多个配置 ,分割
          addresses: http://127.0.0.1:8080/xxl-job-admin
          #执行器token
        accessToken:
    复制代码

    控制台输出以下内容表示注册成功:

    如果输出以下信息,表示注册失败,需要重新检测配置文件信息:

    登录任务调度中心 -->执行器管理 ,可以查看是否注册成功。

    显示上面信息,表示注册成功。

    7、配置MyJobHandle执行任务文件:

    复制代码
    @Component
    public class MyJobHandle {
    
        @Autowired
        private IUserService userService;
    
        /**
         * xxl-job-core最新版本2.1.2中@JobHandler注解已过时,取而代之的是@XxlJob注解,也不需要去继承IJobHandler类。
         *
         * @param param  调度平台接收的参数信息
         */
        @XxlJob("syncUser")
        public ReturnT syncUser(String param){
            System.out.println("--------------->>参数为\t"+param);
            XxlJobLogger.log("xxl-job启动成功 ,欢迎使用xxl-job同步数据 。。。 syncUser");
    
            List userList = userService.userList();
            userList.forEach(System.out::println);
    
            return ReturnT.SUCCESS;
        }
    }
    复制代码

    登录任务调度中心-->任务管理 ,新增任务。

    添加成功点击执行按钮,启动任务:

    查看执行结果:调度日志

    说明任务执行成功。在来查看后台控制台输出:

    输出内容,说明任务配置成功了。

    以上就是xxl-job使用的简单案例,想要学习更多内容可以去官网地址进行学习。

     

  • 相关阅读:
    神经痛分类图片大全,神经病理性疼痛分类
    凭借SpringBoot整合Neo4j,我理清了《雷神》中错综复杂的人物关系
    王者荣耀图鉴皮肤怎么来的
    WPF快速学习入门(9.依赖属性)
    2023年中国半导体IP行业发展概况及趋势分析:半导体IP的市场空间广阔[图]
    1069 The Black Hole of Numbers
    Dajngo01_Django框架基础与环境搭建
    【c++】逆波兰表达式求值(详解)
    Rockland丨GOAT TRUEBLOT抗山羊IGG HRP说明书
    Springboot之拦截器Interceptor
  • 原文地址:https://www.cnblogs.com/eternality/p/17350403.html