xxl-job入门

xxl-job入门

  • 中文文档:http://www.xuxueli.com/xxl-job/
  • 源码:https://github.com/xuxueli/xxl-job

依赖及配置

  • jar
<dependency>
    <groupId>com.xuxueli</groupId>
    <artifactId>xxl-job-core</artifactId>
</dependency>
  • application.properties
### xxl-job admin address list, such as "http://address" or "http://address01,http://address02"
xxl.job.adminAddresses=http://127.0.0.1:8080/xxl-job-admin

### xxl-job, access token
xxl.job.accessToken=Cko1lYx*L

### xxl-job executor appname
xxl.job.appname=simulator
### xxl-job executor registry-address: default use address to registry , otherwise use ip:port if address is null
xxl.job.address=
### xxl-job executor server-info
xxl.job.ip=
xxl.job.port=9999
### xxl-job executor log-path  /data/applogs/xxl-job/jobhandler
xxl.job.logpath=e:/jobhandler
### xxl-job executor log-retention-days
xxl.job.logretentiondays=3
  • @config
    @Bean
    @ConfigurationProperties(prefix = "xxl.job")
    public XxlJobSpringExecutor xxlJobExecutor() {

        return new XxlJobSpringExecutor();
    }

创建执行器

创建定时任务

  • GLUE(Java)
package com.xxl.job.service.handler;

import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.IJobHandler;
import org.starry.simulator.service.impl.ScheduledSimulatorTrainOnceSvc;
import org.springframework.beans.factory.annotation.Autowired;

public class ScheduledSimulatorTrainOnceHandle extends IJobHandler {

  @Autowired
  private ScheduledSimulatorTrainOnceSvc scheduled;
  
	@Override
	public void execute() throws Exception {
      scheduled.scheduledReportSimulatoTrainOnceLog();
	}

}

  • bean模式,指定jobHandle
// 执行器代码
@XxlJob("demoJobHandler")
    public void demoJobHandler() throws Exception {
        XxlJobHelper.log("XXL-JOB, Hello World.");

        for (int i = 0; i < 5; i++) {
            XxlJobHelper.log("beat at:" + i);
            TimeUnit.SECONDS.sleep(2);
        }
        // default success
    }

安装

  • 源码下载 打包安装
  • docker 安装
    • docker pull xuxueli/xxl-job-admin:2.3.0
    • docker run -e PARAMS="–spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai" -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.0
    • docker run -p 8080:8080 -v /tmp:/data/applogs --name xxl-job-admin -d xuxueli/xxl-job-admin:2.3.0

mysql 替换 h2

  • h2 url兼容mysql模式:jdbc:h2:E:/ic;MODE=MYSQL
  • sql date_add 函数没有,增加逻辑在java代码处理
  • sql where ! ,h2中不识别;替换为 where not
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值