ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

XXLJob与SpringCloud整合

2022-06-20 16:05:02  阅读:187  来源: 互联网

标签:SpringCloud private job Value 整合 executor xxlJobSpringExecutor XXLJob xxl


图示


下载,建表
网上链接一堆,自己找去,下载完了解压之后是个聚合工程,复制doc>db>.sql文件里面的内容,打开数据库的可视化工具,新建查询粘贴,执行

admin配置,logback.xml配置
配置端口号我习惯用7001…
配置contextpath…随便
配置datasource…改驱动改用户名和密码
配置警示邮件…随便写
其他不用动

logback.xml不改它

启动admin是否成功 成功的话 直接打包就ok

新建SpringCloud项目
注册中心->提供者->消费者
怎么配?SpringCloud案例我这里面说的很清楚了不再赘述
值得一提的是刚才xxljob那个工程中的sample-springboot中的resource给拷一份


到消费方的Resource中,就像下面这样

SpringCloud项目目录

今天的关键在这里


首先需要引入pom依赖,就是刚才打包到maven仓库里的xxljob

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

讲一下这里面XXLJobConfig 和XXLJobHandler

XXLJobConfig
@Configuration
@ComponentScan(basePackages = "com.shanghai.xxljob.handler")

public class XXLJobConfig {
private Logger logger = LoggerFactory.getLogger(XXLJobConfig.class);

@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;


@Bean(initMethod = "start", destroyMethod = "destroy")
public XxlJobSpringExecutor xxlJobExecutor() {
logger.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;
}
}

XXLJobHandler
@Component
public class XXLJobHandler {

@XxlJob("yicheSpringCloud")
public void doSomeThing(){
XxlJobHelper.log("哈喽");
}
}

开始定时任务
第一步
运行刚开始admin打成的jar包


第二步
进入控制台

执行器管理->新增执行器(因为我已经增加过了),这里的机器地址要和application.properties中的xxl.job.executor.ip(不写表示本机)+xxl.job.executor.port一致

 

 

第三步注册任务
打开任务管理新建任务,这里面的jobHandler要和@XxlJob中的value值一致

 

 

执行
首先开项目
注册中心->提供方->消费方都启动起来
随后进入xxljob控制台,任务管理操作选择启动

显示已经在执行

看一下是不是调度日志中有执行结果,比如如下


执行日志中有JobHandler中我们写的日志内容注意 不能用@Slf4j 只能用XxlJobHelper.log去打印日志

看是不是和我们jobhandler是不是和我们要求录入的日志一致

原文链接:https://blog.csdn.net/t_t2_3/article/details/115462048

标签:SpringCloud,private,job,Value,整合,executor,xxlJobSpringExecutor,XXLJob,xxl
来源: https://www.cnblogs.com/zxy-come-on/p/16393483.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有