首页 > 其他分享 >xxl-job 任务注册

xxl-job 任务注册

时间:2023-06-20 11:11:38浏览次数:54  
标签:执行器 job 调度 任务 注册 xxl

https://www.jianshu.com/p/92f0361dc3d6

官方文档:https://www.xuxueli.com/xxl-job/

 

之前和分享了一下对xxl-job的简单理解,这次聊一聊xxl-job任务注册流程和简单的使用方法。

 

一、XXL-JOB调度数据库表如下:

- xxl_job_lock:任务调度锁表;

- xxl_job_group:执行器信息表,维护任务执行器信息;

- xxl_job_info:调度扩展信息表: 用于保存XXL-JOB调度任务的扩展信息,如任务分组、任务名、机器地址、执  行器、执行入参和报警邮件等等;

- xxl_job_log:调度日志表: 用于保存XXL-JOB任务调度的历史信息,如调度结果、执行结果、调度入参、调度机 器和执行器等等;

- xxl_job_log_report:调度日志报表:用户存储XXL-JOB任务调度日志的报表,调度中心报表功能页面会用到;

- xxl_job_logglue:任务GLUE日志:用于保存GLUE更新历史,用于支持GLUE的版本回溯功能;

- xxl_job_registry:执行器注册表,维护在线的执行器和调度中心机器地址信息;

- xxl_job_user:系统用户表;

之所以先介绍表的目的在于,XXL-JOB所有的操作都是基于这几张表的。

 

二、增加执行器

 

2.1 UI配置执行器

   

 

1、"调度中心OnLine:"右侧显示在线的"调度中心"列表, 任务执行结束后, 将会以failover的模式进行回调调度中心通知执行结果, 避免回调的单点风险;

2、"执行器列表" 中显示在线的执行器列表, 可通过"OnLine 机器"查看对应执行器的集群机器。

 

   

 

 

 

AppName: 是每个执行器集群的唯一标示AppName, 执行器会周期性以AppName为对象进行自动注册。可通过该配置自动发现注册成功的执行器, 供任务调度时使用;

名称: 执行器的名称, 因为AppName限制字母数字等组成,可读性不强, 名称为了提高执行器的可读性;

排序: 执行器的排序, 系统中需要执行器的地方,如任务新增, 将会按照该排序读取可用的执行器列表;

注册方式:调度中心获取执行器地址的方式;

自动注册:执行器自动进行执行器注册,调度中心通过底层注册表可以动态发现执行器机器地址;

手动录入:人工手动录入执行器的地址信息,多地址逗号分隔,供调度中心使用;

机器地址:"注册方式"为"手动录入"时有效,支持人工维护执行器的地址信息;

 

2.2 调度中心配置执行器

程序配置执行器比较简单,只是一个单纯的web接口,做了必要的参数校验,直接存入xxl_job_group表中

 

   

 

同时xxl_job_registry表中维护了执行器存活机器的相关信息,数据是动态的,会新增和物理删除。

 

 

三、增加任务

 

3.1 UI新建任务

 

登录调度中心,点击下图所示“新建任务”按钮,新建示例任务。然后,参考下面截图中任务的参数配置,点击保存。

 

   

 

   

 

值得一提的是,一个任务只能对应一个执行器,反之亦然,一个执行器可以拥有对个任务

 

3.2 执行器实现

客户端实必须实现对应的接口,如果是spring项目,增加相应地注解即可

   

 

3.3 调度中心增加任务

程序配置执行器比较简单,是一个单纯的web接口

   

而后做了大量的的参数校验,确认执行器存在,最后存入xxl_job_group表中,等待后续的执行,流程也相对简单。

 

四、总结

任务新增流程相对比较简单,执行器代码侵入性也比较低,最主要明白几张表的作用,和执行器与任务之间的关系,后面会分享一下,任务是具体如何执行的



作者:迷失的撒旦
链接:https://www.jianshu.com/p/92f0361dc3d6
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

标签:执行器,job,调度,任务,注册,xxl
From: https://www.cnblogs.com/zhoading/p/17493074.html

相关文章

  • Eureka注册中心
    服务调用出现的问题:硬编码://2、利用RestTemplate发起http请求,查询用户Stringurl="http://localhost:8081/user/"+order.getUserId();1、服务消费者该如何获取服务提供者的地址信息2、如果有多个服务提供者,消费者该如何选择3、消费者如何得知服务提......
  • 如何更改已注册服务的生命周期?【转】
    前言我们知道在ASP.NETCore中,内置了一个依赖注入容器,可用于注册和解析服务。在注册服务时,我们需要指定服务的生命周期:Transient:每次请求服务时都会创建一个新的实例。Scoped:每次请求服务时都会创建一个新的实例,但在同一个请求内,每次请求服务时都会使用同一个实例。S......
  • Consul注册中心
    1.概念Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其它分布式服务注册与发现的方案,Consul的方案更“一站式”,内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其它工具(比如ZooKeeper......
  • DataX在Windows上实现Mysql到Mysql同步数据以及配置多个job/多个表同步定时执行bat
    场景DataX-阿里开源离线同步工具在Windows上实现Sqlserver到Mysql全量同步和增量同步:DataX-阿里开源离线同步工具在Windows上实现Sqlserver到Mysql全量同步和增量同步_sqlserver数据同步工具_霸道流DataX-在Windows上实现postgresql同步数据到mysql:DataX-在Windows上实现postgres......
  • Eureka注册中心
    1.注册中心服务注册中心是服务实现服务化管理的核心组件,类似于目录服务的作用。主要用来存储服务信息,例如提供者url、路由信息等。服务注册中心是的微服务架构中最基础的设施之一。在微服务架构流行之前。注册中心就已经开始出现在分布式架构的系统中Dubbo是一个在国内比较......
  • 揭秘阿里云 Flink 智能诊断利器——Flink Job Advisor
    作者:藏红一、引言阿里云实时计算Flink作为一款专业级别的高性能实时大数据处理系统,它在各种业务场景中都发挥了关键的作用。丰富而复杂的上下游系统让它能够支撑实时数仓、实时风控、实时机器学习等多样化的应用场景。然而,随着系统的复杂性增加,用户在日常使用中往往需要面临诸如......
  • OPCDA注册后 winform运行却报错
    此错误原因为未注册dll但是我已经注册了之所以会出现这个问题是因为平台不兼容将目标平台改成x86即可 ......
  • AI绘图新玩法「艺术风二维码」保姆级教程分享,注册账号就能玩,一分钟出图,定制自己的二维
    大家好,我是卷了又没卷,薛定谔的卷的AI算法工程师「陈城南」~担任某大厂的算法工程师,带来最新的前沿AI知识和工具,包括AI相关技术、ChatGPT、AI绘图等,欢迎大家交流~。最近AI绘图界又出了一个现象级的玩法,「艺术化二维码」生成,先看个网上比较火的图了解一下。上面这个图就是今天介绍的......
  • AI绘图新玩法「艺术风二维码」保姆级教程分享,注册账号就能玩,一分钟出图,定制自己的二维
    大家好,我是卷了又没卷,薛定谔的卷的AI算法工程师「陈城南」~担任某大厂的算法工程师,带来最新的前沿AI知识和工具,包括AI相关技术、ChatGPT、AI绘图等,欢迎大家交流~。最近AI绘图界又出了一个现象级的玩法,「艺术化二维码」生成,先看个网上比较火的图了解一下。上面这个图就是今天介......
  • springboot注册过滤器
    springboot注册过滤器需要使用过滤器的话,优先选择拦截器。因为拦截器符合aop思想。在springboot中使用过滤器有三种方式。分别如下方式一:传统web在传统javaweb、ssm中使用过滤器差不多类似,这里以java配置为例,实现Filter接口@WebFilter("/*")publicclassMyFilter01i......