GLUE脚本任务

更新时间:

GLUE(在线脚本)是XXL-JOB提供的一种在线脚本任务模式。该模式支持在MSE XXL-JOB控制台直接编写和发布多种语言的脚本,用于动态更新定时任务的业务逻辑,而无需重新部署应用。

GLUE任务与BEAN任务对比

维度

GLUE脚本任务

BEAN任务

执行方式

fork子进程执行脚本。每次执行都会创建一个独立的进程,存在一定的系统开销。

线程内执行。任务作为JobHandler在执行器JVM的线程池中运行,资源共享,开销小。

资源开销

较高。每次执行任务时,执行器fork一个子进程执行脚本,因此相比BEAN任务,资源占用更多。

较低。共享执行器应用的JVM资源。

更新方式

在线更新,即时生效。在控制台编辑并保存脚本后即可生效,无需部署。

代码变更,重新部署。需要修改Java代码,打包并发布新的执行器应用版本。

开发效率

高。适合需要快速迭代和验证的场景。

较低。遵循标准的软件开发和发布流程。

推荐场景

任务调度不频繁的场景,如数据清理、报表生成、API集成等。

核心业务逻辑、高频调度任务、复杂计算等。

适用范围

  • 引擎版本:MSE XXL-JOB版 v2.2.2 及以上版本。

  • 支持的脚本语言:Java, Shell, Python, PHP, NodeJs, PowerShell。

创建GLUE脚本任务

操作步骤

  1. 登录MSE XXL-JOB控制台,在顶部菜单栏选择地域

  2. 任务调度 > XXL-JOB页面,单击目标实例。

  3. 在左侧导航栏选择任务管理,然后单击创建任务

  4. 创建任务页面,选择关联应用,并完成相关配置任务信息。

    说明
    • 任务类型:根据脚本语言,选择对应的GLUE任务类型。

    • 脚本内容:此任务执行的脚本代码。

  5. 单击完成

管理GLUE脚本任务

更新脚本

  1. 任务管理列表中,找到需要修改的任务。

  2. 运行模式列,单击编辑脚本

  3. 编辑脚本窗口中,修改脚本内容,单击确定

  4. 最新版本窗口中,输入版本名称,单击确定

历史版本对比

  1. 任务管理列表中,找到需要修改的任务。

  2. 运行模式列,单击编辑脚本

  3. 编辑脚本窗口中,开启版本对比

  4. 选择版本名称,查看历史版本与变更内容。