分布式调度框架Tbschedule 分析

 

 

分布式调度框架Tbschedule 分析

 

1.策略名称--这个可以根据你具体的 任务 取一个与之相关的名字即可

2.任务类型 :目前我只用过Schedule类型

3.任务名称:这个和具体的 要执行的任务的名称一致即可

4. 任务参数:这个基本上没有用过

5.单JVM最大线程组数量: 因为tbschedule在一个JVM中可以启动多个线程组,所以此地可以做配置限制

6.最大线程组数量: 所有服务器总共运行的最大数量

 这个要解释一下:  tbschedule 是针对任务的 例如: 同步订单状态是一个任务,任务又可以通过切片,切片的意思按照最简单的例子来说:mysql数据库的分表,经常用到。一个订单的orderNum生成之后, 有9个order表;0到8,可以通过对orderNum取余数来确定这个订单应该落入哪个表中。此时 taskItems就上场了。

分布式调度框架Tbschedule 分析

 

如上:SampleTask任务,我切分了4个子任务:具体配置如下
分布式调度框架Tbschedule 分析

每个线程组开启5个线程

tbschedule 分调度 与执行 两个核心

每启动一个 tbschedule项目就会向注册中心注册一个调度管理器,这个调度管理器是进行调度任务分配的。调度管理器会取***最大的那个进行调度任务分配。如果当前***最大的宕机了,会按照这个规则再选区一个调度管理器重新分配任务。分配任务的单位是taskItem。