基于spring-quartz的动态数据源与异构任务调度中心设计

本文介绍了基于Spring Quartz实现的多数据源、动态数据源的异构任务调度中心。针对企业中任务调度分散、耦合度高的问题,提出了构建统一任务调度中心的目标,包括常规调度需求、热加载和数据源切换等功能,并详细阐述了实现方案和架构设计,采用Spring Boot、MyBatis和OAuth2.0等技术。
摘要由CSDN通过智能技术生成

本篇主要讲基于 spring quartz的多数据源、动态数据源,多任务调度中心架构原理与实现,源码分享。

在企业应用中,很多服务都是依托数据来展开的,数据是各企业的核心资源之一。大量的业务场景产生大量的数据,这些数据要被各种工具进行加工处理,最后返哺整个业务链。定时任务是最常见的数据处理手段之一。任务调度场景几乎出现在所有的企业应用中,这些任务的调度在比较庞大的场景下,就显得不好管理,因此进行任务调度的总体集成,对其进行统一管理是不得不考虑的事情了。

一、场景

某个项目是由微服务构成,有四套数据源,有两套系统完全一致的环境用在几个不同的项目中,任务调度都在各自不同的微服务里面。造成的现状就是,在各应用系统里面,调度任务与业务系统揉合在一块,高度耦合。各任务调度的配置和执行显得臃肿累赘,代码的复用率极低,又因为几个项目又略有不同,导致依然存在有不同的调度任务,各系统之间的差异性开发、测试、部署等各软件生命周期中,大型的任务调度有可能严重影响业务系统效率。

二、目标

我们要构建一套任务调度中心,要实现以下几个核心内容

  • 首先要满足调度任务的常规基础需求,如:调度任务
  • 满足基础需求后,还要可以热加载,无缝切换等常规操作,如:实时修改调度计划、启动时间等等。
  • 支持多数据源、支持数据源动态切换、支持数据源热加载等等多数据源机制,如:一个模块实现不同数据源的切换,在线添加一个数据源并切换等等。
  • 分布式事务的处理
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值