下载吧 其他软件

分类分类

XXL-JOB(分布式任务调度平台)

XXL-JOB(分布式任务调度平台)

v2.3.0 官方版

大小:7.7 MB 更新:2024/05/31

类别:其他软件系统:WinAll

立即下载

  XXL-JOB是一个功能强大、简单专业的分布式任务调度平台搭建框架,可帮助用户快速便捷搭建专业完美的任务调度网站平台,可轻松实现专业便捷的分布式任务调度,同时该软件支持任务调度自定义以及Glue代码编辑可进入任务调度界面进行任务属性编辑,实现简单专业的分布式任务调度;XXL-JOB拥有对用户友好的操作界面,操作简单便捷,一分钟即可熟练使用,该软件支持任务自动调度和手动调度功能,可在线配置调度任务入参,实现灵活便捷的任务分配,同时该软件还内置调度日志功能,可以查看任务调度历史日志,便于系统任务管理。

XXL-JOB(分布式任务调度平台)

软件功能

  1、线程池隔离:调度线程池进行隔离拆分,慢任务自动降级进入”Slow”线程池,避免耗尽调度线程,提高系统稳定性;

  2、用户管理:支持在线管理系统用户,存在管理员、普通用户两种角色;

  3、权限控制:执行器维度进行权限控制,管理员拥有全量权限,普通用户需要分配执行器权限后才允许相关操作;

  4、数据加密:调度中心和执行器之间的通讯进行数据加密,提升调度信息安全性;

  5、邮件报警:任务失败时支持邮件报警,支持配置多邮件地址群发报警邮件;

  6、推送maven中央仓库: 将会把最新稳定版推送到maven中央仓库, 方便用户接入和使用;

  7、触发策略:提供丰富的任务触发策略,包括:Cron触发、固定间隔触发、固定延时触发、API(事件)触发、人工触发、父子任务触发;

  8、调度过期策略:调度中心错过调度时间的补偿处理策略,包括:忽略、立即补偿触发一次等;

  9、阻塞处理策略:调度过于密集执行器来不及处理时的处理策略,策略包括:单机串行(默认)、丢弃后续调度、覆盖之前调度;

  10、任务超时控制:支持自定义任务超时时间,任务运行超时将会主动中断任务;

  11、任务失败重试:支持自定义任务失败重试次数,当任务失败时将会按照预设的失败重试次数主动进行重试;其中分片任务支持分片粒度的失败重试;

  12、任务失败告警;默认提供邮件方式失败告警,同时预留扩展接口,可方便的扩展短信、钉钉等告警方式;

  13、路由策略:执行器集群部署时提供丰富的路由策略,包括:第一个、最后一个、轮询、随机、一致性HASH、最不经常使用、最近最久未使用、故障转移、忙碌转移等;

  14、分片广播任务:执行器集群部署时,任务路由策略选择”分片广播”情况下,一次任务调度将会广播触发集群中所有执行器执行一次任务,可根据分片参数开发分片任务;

  15、动态分片:分片广播任务以执行器为维度进行分片,支持动态扩容执行器集群从而动态增加分片数量,协同进行业务处理;在进行大数据量业务操作时可显著提升任务处理能力和速度。

  16、故障转移:任务路由策略选择”故障转移”情况下,如果执行器集群中某一台机器故障,将会自动Failover切换到一台正常的执行器发送调度请求。

  17、任务进度监控:支持实时监控任务进度;

  18、Rolling实时日志:支持在线查看调度结果,并且支持以Rolling方式实时查看执行器输出的完整的执行日志;

  19、GLUE:提供Web IDE,支持在线开发任务逻辑代码,动态发布,实时编译生效,省略部署上线的过程。支持30个版本的历史版本回溯。

  20、脚本任务:支持以GLUE模式开发和运行脚本任务,包括Shell、Python、NodeJS、PHP、PowerShell等类型脚本;

  21、命令行任务:原生提供通用命令行任务Handler(Bean任务,”CommandJobHandler”);业务方只需要提供命令行即可;

  22、任务依赖:支持配置子任务依赖,当父任务执行结束且执行成功后将会主动触发一次子任务的执行, 多个子任务用逗号分隔;

  23、运行报表:支持实时查看运行数据,如任务数量、调度次数、执行器数量等;以及调度报表,如调度日期分布图,调度成功分布图等;

  24、调度线程池:调度系统多线程触发调度运行,确保调度精确执行,不被堵塞;

软件特色

  1、XXL-JOB界面简洁直观、操作简单便捷,一分钟上手

  2、具备开发迅速、学习简单、轻量级、易扩展等特性

  3、支持任务参数自定义,可在线配置调度任务

  4、支持动态修改任务状态、启动/停止任务

  5、支持集群部署,可保证调度中心HA

  6、支持多国语言显示设置

官方教程

  点击进入”执行器管理”界面, 如下图:

XXL-JOB(分布式任务调度平台)

  1、"调度中心OnLine:"右侧显示在线的"调度中心"列表, 任务执行结束后, 将会以failover的模式进行回调调度中心通知执行结果, 避免回调的单点风险;2、"执行器列表" 中显示在线的执行器列表, 可通过"OnLine 机器"查看对应执行器的集群机器。

  点击按钮 “+新增执行器” 弹框如下图, 可新增执行器配置:

XXL-JOB(分布式任务调度平台)

  执行器属性说明

  AppName: 是每个执行器集群的唯一标示AppName, 执行器会周期性以AppName为对象进行自动注册。可通过该配置自动发现注册成功的执行器, 供任务调度时使用;名称: 执行器的名称, 因为AppName限制字母数字等组成,可读性不强, 名称为了提高执行器的可读性;排序: 执行器的排序, 系统中需要执行器的地方,如任务新增, 将会按照该排序读取可用的执行器列表;注册方式:调度中心获取执行器地址的方式; 自动注册:执行器自动进行执行器注册,调度中心通过底层注册表可以动态发现执行器机器地址; 手动录入:人工手动录入执行器的地址信息,多地址逗号分隔,供调度中心使用;机器地址:"注册方式"为"手动录入"时有效,支持人工维护执行器的地址信息;

  4.2 新建任务

  进入任务管理界面,点击“新增任务”按钮,在弹出的“新增任务”界面配置任务属性后保存即可。详情页参考章节 “三、任务详解”。

  4.3 编辑任务

  进入任务管理界面,选中指定任务。点击该任务右侧“编辑”按钮,在弹出的“编辑任务”界面更新任务属性后保存即可,可以修改设置的任务属性信息:

  4.4 编辑GLUE代码

  该操作仅针对GLUE任务。

  选中指定任务,点击该任务右侧“GLUE”按钮,将会前往GLUE任务的Web IDE界面,在该界面支持对任务代码进行开发。可参考章节 “3.3 GLUE模式(Java)”。

  4.5 启动/停止任务

  可对任务进行“启动”和“停止”操作。

  需要注意的是,此处的启动/停止仅针对任务的后续调度触发行为,不会影响到已经触发的调度任务,如需终止已经触发的调度任务,可查看“4.9 终止运行中的任务”

XXL-JOB(分布式任务调度平台)

  4.6 手动触发一次调度

  点击“执行”按钮,可手动触发一次任务调度,不影响原有调度规则。

XXL-JOB(分布式任务调度平台)

  4.7 查看调度日志

  点击“日志”按钮,可以查看任务历史调度日志。在历史调入日志界面可查看每次任务调度的调度结果、执行结果等,点击“执行日志”按钮可查看执行器完整日志。

XXL-JOB(分布式任务调度平台)

  调度时间:"调度中心"触发本次调度并向"执行器"发送任务执行信号的时间;调度结果:"调度中心"触发本次调度的结果,200表示成功,500或其他表示失败;调度备注:"调度中心"触发本次调度的日志信息;执行器地址:本次任务执行的机器地址运行模式:触发调度时任务的运行模式,运行模式可参考章节 "三、任务详解";任务参数:本地任务执行的入参执行时间:"执行器"中本次任务执行结束后回调的时间;执行结果:"执行器"中本次任务执行的结果,200表示成功,500或其他表示失败;执行备注:"执行器"中本次任务执行的日志信息;操作: "执行日志"按钮:点击可查看本地任务执行的详细日志信息;详见“4.8 查看执行日志”; "终止任务"按钮:点击可终止本地调度对应执行器上本任务的执行线程,包括未执行的阻塞任务一并被终止;

  4.8 查看执行日志

  点击执行日志右侧的 “执行日志” 按钮,可跳转至执行日志界面,可以查看业务代码中打印的完整日志,如下图;

XXL-JOB(分布式任务调度平台)

  4.9 终止运行中的任务

  仅针对执行中的任务。

  在任务日志界面,点击右侧的“终止任务”按钮,将会向本次任务对应的执行器发送任务终止请求,将会终止掉本次任务,同时会清空掉整个任务执行队列。

XXL-JOB(分布式任务调度平台)

  任务终止时通过 “interrupt” 执行线程的方式实现, 将会触发 “InterruptedException” 异常。因此如果JobHandler内部catch到了该异常并消化掉的话, 任务终止功能将不可用。

  因此, 如果遇到上述任务终止不可用的情况, 需要在JobHandler中应该针对 “InterruptedException” 异常进行特殊处理 (向上抛出) , 正确逻辑如下:

XXL-JOB(分布式任务调度平台)

  而且,在JobHandler中开启子线程时,子线程也不可catch处理”InterruptedException”,应该主动向上抛出。

  任务终止时会执行对应JobHandler的”destroy()”方法,可以借助该方法处理一些资源回收的逻辑。

  4.10 删除执行日志

  在任务日志界面,选中执行器和任务之后,点击右侧的”删除”按钮将会出现”日志清理”弹框,弹框中支持选择不同类型的日志清理策略,选中后点击”确定”按钮即可进行日志清理操作;

XXL-JOB(分布式任务调度平台)

  4.11 删除任务

  点击删除按钮,可以删除对应任务。

XXL-JOB(分布式任务调度平台)

  4.12 用户管理

  进入 “用户管理” 界面,可查看和管理用户信息;

  目前用户分为两种角色:

  管理员:拥有全量权限,支持在线管理用户信息,为用户分配权限,权限分配粒度为执行器;

  普通用户:仅拥有被分配权限的执行器,及相关任务的操作权限;

XXL-JOB(分布式任务调度平台)
XXL-JOB(分布式任务调度平台)

更新日志

  7.1 版本 V1.1.x,新特性[2015-12-05]

  【于V1.1.x版本,XXL-JOB正式应用于我司,内部定制别名为 “Ferrari”,新接入应用推荐使用最新版本】

  1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;

  2、动态:支持动态修改任务状态,动态暂停/恢复任务,即时生效;

  3、服务HA:任务信息持久化到mysql中,Job服务天然支持集群,保证服务HA;

  4、任务HA:某台Job服务挂掉,任务会平滑分配给其他的某一台存活服务,即使所有服务挂掉,重启时或补偿执行丢失任务;

  5、一个任务只会在其中一台服务器上执行;

  6、任务串行执行;

  7、支持自定义参数;

  8、支持远程任务执行终止;

  7.2 版本 V1.2.x,新特性[2016-01-17]

  1、支持任务分组;

  2、支持“本地任务”、“远程任务”;

  3、底层通讯支持两种方式,Servlet方式 + JETTY方式;

  4、支持“任务日志”;

  5、支持“串行执行”,并行执行;

相关文章
  • 最新排行
  • 最热排行
  • 评分最高
其他软件排行榜

点击查看更多

点击查看更多

点击查看更多