plsql job执行多个存储过程_spring-boot-micro-job一款分布式任务调度执行框架

任务注册中心(registry)

d2e141859574b5c47aca2087ca6f2a88.png

registry是任务注册中心,在整个生态圈内担任着各个组件注册节点的任务,任务注册中心实现方式是多样化的,目前包含:memory、zookeeper、redis、consul等。

通过idea、eclipse工具创建SpringBoot项目并添加如下依赖到pom.xml文件内。

com.github.hengboyspring-boot-starter-registry-memory{lastVersion}

在resources资源目录下添加application.yml配置文件,配置内容如下所示:

server: port: 9000hengboy: job: registry: # 任务注册中心节点注册方式 away: memory

任务调度器(schedule)

schedule是任务调度器,每一个任务的创建都是通过调度器进行分配执行,分配过程中根据消费节点的负载均衡策略配置进行不同消费者节点任务消费。

在生产任务时,也会根据调度器的负载均衡策略来进行筛选执行任务调度的调度器节点。

通过idea、eclipse工具创建SpringBoot项目并添加如下依赖到pom.xml文件内。

com.github.hengboy spring-boot-starter-schedule {lastVersion}

在resources资源目录下添加application.yml配置文件,配置内容如下所示:

server: port: 8081hengboy: job: registry: # 保持与任务注册中心节点注册方式一致即可 away: memory schedule: # 内存方式调度器处理任务队列以及任务日志的存储 job-store-type: memory 

任务消费节点(consumer)

consumer是任务消费者执行节点,任务由consumer进行定义以及上报,当schedule调用消费者执行任务请求时,会自动根据jobKey来执行对应的任务逻辑方法。

通过idea、eclipse工具创建SpringBoot项目并添加如下依赖到pom.xml文件内。

com.github.hengboyspring-boot-starter-consumer{lastVersion}

在resources资源目录下添加application.yml配置文件,配置内容如下所示:

server: port: 8082hengboy: job: registry: # 保持与任务注册中心节点注册方式一致即可 away: memory

任务定义示例

我们来定义一个简单的Job,示例如下所示:

@Job(jobExecuteAway = JobExecuteAwayEnum.ONCE)public class TestJob implements MicroJob { /** * logger instance */ static Logger logger = LoggerFactory.getLogger(TestJob.class); @Override public JobExecuteResult execute(JobExecuteParam jobExecuteParam) throws JobException { logger.info("执行Key:{},执行参数:{}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部