XXL-JOB

@Scheduled 定时任务_DO your like的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/qq_36777191/article/details/132941244传统定时任务(以Spring自带定时任务为例)

  1. 不支持集群
  2. 不支持任务重试
  3. 不支持动态调用,时钟是定值无法在运行状态实时修改
  4. 无异常报警机制,执行过程出现异常无法感知需要日志信息辅助
  5. 不支持生命周期的统一管理,一跑起来就无法管理了,除非手动关闭程序
  6. 任务数据难以统计,不能保证每次任务的成功因此无法确定有多少次失败任务

xxl-job

主要分为调动服务、应用服务,即应用服务对方法添加@Xxljob("taskname")注解标记为定时任务,然后注册到调度服务,最后调度服务会根据cron触发任务

分布式定时任务可以有效解决上述传统定时任务的缺陷 

        (xxl-job-admin)调度服务配置完成server.servlet.context、port、accessToken、告警邮箱、job数据库链接等信息后就可以直接启动

        业务服务这边需要引入maven依赖(xxl-job-core)然后通过@Configuration @Bean实例化XxlJobSpringExecutor

@Confgruation

public class TaskConf{

        @Value("${xxl.job.executor.adminAddresses}")

        private String adminAddress;

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

        private String appname;

        @Value("${xxl.job.executor.ip}")

        private String ip;

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

        private String port;

        @Value("${xxl.job.executor.accessToken}")

        private String accessToken;

        @Value("xxl.job.executor.logpath")

        private String logpath;

        @Value("${xxl.job.executor.logretentiondays}")

        private int logRetentionDays

        @Bean

        public XxlJobSpringExecutor xxlJobExecutor(){

                XxlJobSpringExecutor executor  = new XxlJobSpringExecutor();

                executor.setAdminAddress();

                executor.setAppname();

                executor.setAccessToken();

                executor.setIp(ip);

                executor.setPort(port);

                executor.setLogPath(logPath);

                executor.setLogRetentionDays(logRetentionDays);

        }

}

再后面就可以直接在业务代码的类型 (@Component类) 的方法上添加@XxlJob(alias) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值