中间使用 xxl-job 的日志记录错误信息和执行结果 1.3.3.2 视频补偿机制 由于使用乐观锁会将任务状态更新为处理中,如果此时执行任务的执行器(服务)宕机了,会导致该任务记录一直存在,因为乐观锁的原因别的执行器也无法获取,这个时候同样需要使用任务调度的方式,定期扫描任务表,判断任务是否处于处理中状态并且任务创建时间...
因xxl-job 没有使用 spring-boot-starter,需自行将配置类注入到 Spring 容器中。 @Configuration publicclassXxlJobConfig{ privateLoggerlogger=LoggerFactory.getLogger(XxlJobConfig.class); @Value("${xxl.job.admin.addresses}") privateString adminAddresses; @Value("${xxl.job.accessToken}") privateString a...
最不经常使用(LFU:Least Frequently Used):Xxl-Job内部会有一个缓存,统计每个任务每个地址的使用次数,每次都选择使用次数最少的地址,这个缓存每隔24小时重置一次 最近最久未使用(LRU:Least Recently Used):将地址存到LinkedHashMap中,它利用LinkedHashMap可以根据元素访问(get/put)顺序来给元素排序的特性,快速找到最近...
CONSISTENT_HASH(一致性HASH):每个任务按照Hash算法固定选择某一台机器,且所有任务均匀散列在不同机器上。 LEAST_FREQUENTLY_USED(最不经常使用):使用频率最低的机器优先被选举; LEAST_RECENTLY_USED(最近最久未使用):最久未使用的机器优先被选举; FAILOVER(故障转移):按照顺序依次进行心跳检测,第一个心跳检测成功的...
XXL-JOB使用总结 一、XXL-JOB简介 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习门槛低、轻量级、易扩展。XXL-JOB使用简单,支持通过Web界面进行任务的增删改查,同时也支持通过API接口进行任务管理。它支持CRON表达式、固定间隔以及固定延迟等多种调度方式,可以满足大部分任务调度的需求。 二、...
执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调";为空则关闭自动注册; xxl.job.admin.addresses=http://127.0.0.1:8082/xxl-job-admin ### 执行器通讯TOKEN [选填]:非空时启用; xxl.job.accessToken=default_token ### 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册 xxl....
如下是执行器列表,可见我们有两个执行器,其中一个执行器liu-job有两个实例,OnLine机器地址为2,在xxl-job中,执行器叫做AppName,这就相当于我们微服务中的服务名称,我们可以在执行器项目的properties文件中指明,此处注册执行器,其实和我们使用Nacos,Zookeeper,Eureka作为注册中心是一样的,只是xxl-job使用MySQL作为注册中...
标签;depends_on- 依赖于谁先安装、MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'- 可以设置MySQL无密码安装、mysql-job-dbdata- 一个启动安装数据库初始化脚本的镜像。并且需要在 MySQL 安装时使用volumes_from标签引入。 2. 访问 xxl-job 地址:http://127.0.0.1:9090/xxl-job-admin - admin/123456 - 安装后稍等启动...
XXL-JOB搭建与使用 一、背景 最一开始接触XXL-JOB是因为一个定时任务的需求,说到定时任务可能一开始会想到Java中的@Scheduled,但我们的项目是集群部署的,如果使用@Scheduled将会出现风险,所以本次的重点XXL-JOB就非常适合当前的场景,本次我们将讲述:本地部署xxl-job服务+接入本地需要进行定时执行的服务。
执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调"xxl.job.admin.addresses=http://127.0.0.1:8080/xxl-job-admin# 执行器"AppName"和地址信息配置:AppName执行器心跳注册分组依据;地址信息用于"调度中心请求并触发任务"和"执行器注册"。执行器默认端口为9999,执行器IP默认为空表示自动获取IP,多...