【PowerJob语雀转载】 兼容性说明

37 阅读2分钟

必读

  1. powerjob-worker 版本建议 低于或等于 powerjob-server ,一般可跨越2个中版本(中间的那个版本号)
  2. powerjob-worker 的大版本(比如 v3.x 和 v2.x 完全不兼容)不能与 powerjob-server 不同。

迁移指南

v1.x.x -> v2.x.x

主要是数据库层面的变动

  1. instance_info 表变动
    1. 新增字段:wf_instance_id (bigint)
    2. 新增字段:type (int)
    3. 修改字段类型:instance_params (varchar -> text)
    4. 修改字段类型:result (varchar -> text)
  1. 新增 workflow_info 表

  2. 新增 workflow_instance_info 表

v2.x.x -> v3.x.x

项目重命名,从 OhMyScheduler 改为了 PowerJob,为此需要修改相关包名:

  1. com.github.kfcfans.oms.xxx -> com.github.kfcfans.powerjob.xxx

v3.x.x -> v4.x.x

变更较大,当然,也更强大 !

  1. maven 坐标变更:从 com.github.kfcfans 切换为 tech.powerjob
  2. 包名变更 com.github.kfcfans.powerjob.xxx -> tech.powerjob.xxx,开发者需要感知的有
    1. OhMyWorker -> PowerJobWorker
    2. OhMyConfig -> PowerJobWorkerConfig
    3. OhMyClient -> PowerJobClient
  1. 模型变更:废弃‘SHELL’和‘PYTHON’两种处理器类型,只保留“内建”和“外置”两种处理器类型。
    1. 内建:原 'Java' 类型,表示该处理器是项目中的原生代码,只要没有用到 JVM 容器,无脑选这个!
    2. 外置:原 'Java 容器'类型,表示该处理器是通过 JVM 容器热加载的。
    3. 至于 SHELL 和 PYTHON 处理器,统一由官方处理器进行承接:LINK
  1. 数据库表结构变更
    1. 新增数据库表:workflow_node_info(工作流节点信息表)
    2. 修改数据库表:job_info(任务信息表)
      1. 新增字段:dispatch_strategy(int,调度策略)
      2. 新增字段:lifecycle(varchar,生命周期)
      3. 新增字段:extra(varchar,用户自定义扩展参数)
    1. 修改数据库表:instance_info(任务实例信息表)
      1. 新增字段:job_params(varchar,冗余存储任务的参数)
    1. 修改数据库表:workflow_info(工作流信息表)
      1. 新增字段:lifecycle(varchar,生命周期)
      2. 新增字段:extra(varchar,用户自定义扩展参数)
    1. 修改数据库表:workflow_instance_info(工作流实例信息表)
      1. 新增字段:wf_context(text,工作流实例上下文信息)