xxljob的使用

1,项目配置注册不到xxljob执行器管理? xxl-job, executor registry config fail, appname is null.

查看执行器是否读取配置信息。

一、添加依赖

二、启动xxljob服务器

三、将服务注册到xxljob上

  主要执行代码

复制代码
@Slf4j
@Configuration
public class JobConfig {
@Value("${xxl.job.admin.addresses}")
private String adminAddresses;

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

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

// @Value("${xxl.job.executor.addresses}")
private String address;

// @Value("${xxl.job.executor.ip}")
private String ip;

@Value("${xxl.job.executor.port}")
private int port;

@Value("${xxl.job.executor.logpath}")
private String logPath;

@Value("${xxl.job.executor.logretentiondays}")
private int logRetentionDays;


@Value("${xxl.job.start}")
private boolean start;

@Bean
@ConditionalOnProperty(value = "xxl.job.start", havingValue = "true")
public XxlJobSpringExecutor xxlJobExecutor() {
log.info(">>>>>>>>>>> xxl-job config init.");
XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
xxlJobSpringExecutor.setAppname(appname);
xxlJobSpringExecutor.setAddress(address);
xxlJobSpringExecutor.setIp(ip);
xxlJobSpringExecutor.setPort(port);
xxlJobSpringExecutor.setAccessToken(accessToken);
xxlJobSpringExecutor.setLogPath(logPath);
xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);

return xxlJobSpringExecutor;
}

}
复制代码

4,配置注解

@Scheduled(cron = "0 0/1 * * * * ?")
@XxlJob("everyMinuteExecute")

5,在xxljob配置定时任务

创建定时任务

复制代码
//创建任务
        JobInfo job = new JobInfo();
        //设置任务属性
        job.setJobDesc(lasReminderTriggerConfig.getJobRemark());//
        job.setAuthor(AuthenticationHelper.getCurrentUser());
        job.setAlarmEmail("");
        job.setScheduleType("CRON");
        job.setScheduleConf(lasReminderTriggerConfig.getCronExpression());//
        job.setExecutorHandler("defaultReminderJob");//
        job.setExecutorParam(entity.getId());//设置任务参数
        job.setChildJobId("");
        job.setMisfireStrategy("DO_NOTHING");
        job.setExecutorRouteStrategy("ROUND");
        job.setExecutorBlockStrategy("SERIAL_EXECUTION");
        job.setExecutorTimeout(0);
        job.setExecutorFailRetryCount(0);
        job.setGlueType("BEAN");
        String jobInfo = timeTaskService.add(job);
复制代码

 

posted @   党王  阅读(356)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示