之前在工作中有接触许雪里开源的分布式任务调度平台XXL-JOB,最近经过一段时间的源码系统学习,今天简单写一篇博客介绍一下。

一、完整介绍地址:官方介绍 http://www.xuxueli.com/xxl-job

二、最新版本架构图:

 XXL-JOB原理--定时任务框架简介(一)_任务调度

 

三、介绍

目前我们在项目中可能接触到定时任务框架quartz,应用也是比较广泛的,其也是支持分布式任务调度的,通过数据库竞争锁来实现,当然会有很多的局限性(可能这也是xxl-job出现的原因),quartz支持多种数据库(https://github.com/quartz-scheduler/quartz/tree/master/quartz-core/src/main/resources/org/quartz/impl/jdbcjobstore),xxl-job其实也是在quartz的基础上实现的,但是修改了任务调度的模式,并且任务调度采用注册和RPC调用方式来实现。

管理后台:

 XXL-JOB原理--定时任务框架简介(一)_github_02

 

四、技术栈

mysql、SSM,内置jetty作为RPC服务调用、quartz

五、xxl-job支持Postgresql数据库

目前由于xxl-job只支持mysql数据库,目前在github上拉了一个分支支持Postgresql 地址    GitHub地址  https://github.com/IAMTJW/xxl-job


[ 尐鱼儿的QQ群:726994578 ] --- [ https://github.com/godmaybelieve ]