XXL-Job动态添加任务

前言最近项目中涉及到了定时任务相关需求,最终选择了分布式任务调度框架xxl-job,由于我们在使用xxl-job。这里对xxl-job 一些使用做一下简单介绍。实践xxl-job 主要分为一个展示web的独立服务,另外一个是我们项目引入xxl-job依赖,对定时任务做监听。这里不对xxl-job 部署独立服务做介绍,主要介绍如何引入xxl-job依赖进行创建定时任务。一、配置yml# 定时任务中心配置信息job: server: enabled: true # 校验令牌,和
摘要由CSDN通过智能技术生成

前言

最近项目中涉及到了定时任务相关需求,最终选择了分布式任务调度框架xxl-job,由于我们在使用xxl-job。这里对xxl-job 一些使用做一下简单介绍。

手动定时任务

xxl-job 主要分为一个展示web的独立服务,另外一个是我们项目引入xxl-job依赖,对定时任务做监听。这里不对xxl-job 部署独立服务做介绍,主要介绍如何引入xxl-job依赖进行创建定时任务。

一、配置yml

# 定时任务中心配置信息
job:
  server:
    enabled: true
    # 校验令牌,和服务器保持一致
    accessToken: accessToken
    userName: admin
    password: xxx
    jobGroup: 1
    admin:
      # 定时任务中心地址,通过环境变量取值,(预发布环境需填写预发布的域名,不然会调到开发环境的服务)
      addresses: https://job-centerxx.com
    executor:
      # 执行器名称
      appname: middle-executor
      # 执行器的注册地址
      address:

二、xxl-job 依赖

  <!-- xxl-job-core -->
        <dependency>
            <groupId>com.xuxueli</groupId>
            <artifactId>xxl-job-core</artifactId>
            <version>2.3.0</version>
        </dependency>

三、xxl-job 启动

@Slf4j
@Configuration
@Getter
public class JobServerConfig {
   

    @Value("${job.server.admin.addresses}")
    private String adminAddresses;

    @Value("${job.server.accessToken}")
    private String accessToken;

    @Value("${job.server.executor.appname}")
    private String appname;

    @Value("${job.server.executor.address}")
    private String address;

    @Value("${job.server.userName}")
    private String userName;

    @Value("${job.server.password}")
    private String password;

    @Value("${job.server.jobGroup}")
    private String jobGroup;

    @Bean
    public XxlJobSpringExecutor xxlJobExecutor() {
   
        log.info(">>>>>>>>>>> job-server config init.");
        XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
        xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
        xxlJobSpringExecutor.setAppname(appname);
        xxlJobSpringExecutor.setAddress(address);
        xxlJobSpringExecutor.setAccessToken(accessToken);

        return xxlJobSpringExecutor;
    }
}

四、xxl-job 定时任务处理


    /**
     * 工单生成
     */
    @XxlJob("patrolGenerateHandler")
    public void maintenanceBeginNoticeHandler() {
   
        long taskId = 0;
        try {
   
            String param = XxlJobHelper.getJobParam();
            taskId = Long.parseLong(param);
            System.out.println("工单生成");
        } catch (Exception e) {
   
            log.error("patrolGenerateHandler fail taskId is {}", taskId, e);
        }

    }

五、web端配置对应的定时任务

  • 1
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值