java定时任务框架quartz、elastic-job和xxl-job的分析对比(个人总结)

定时任务框架quartz、elastic-job和xxl-job分析

(说明:开发中遇到需要做定时任务的需求,之前查阅了很多资料,比较杂乱,一直没有时间做个整理。第一版用的是quartz,能满足大部分功能,但是老大说要考虑到后期系统的健壮性和拓展性,quartz还是有很多局限的,综合考量下,决定用ealstic-job框架来重构,本文着重分析此框架。其中有很多内容是从其他人的博客中摘抄过来的,记不太清了,如有冒犯,请联系处理!)

一、概述

  • Quartz

    • Java上的定时任务标准。但Quartz关注点在于定时任务而非数据,并无一套根据数据处理而定制化的流程。虽然Quartz可以基于数据库实现作业的高可用,但缺少分布式并行调度的功能

  • elastic-job

    • 当当开发的弹性分布式任务调度系统,功能丰富强大,采用zookeeper实现分布式协调,实现任务高可用以及分片,目前是版本2.1.5,并且可以支持云开发

  • xxl-job:

    • 是大众点评员工徐雪里于2015年发布的分布式任务调度平台,是一个轻量级分布式任务调度框架,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。

二、对比

对比项 Quartz elastic-job xxl-job
依赖 mysql jdk1.7+, zookeeper 3.4.6+ ,maven3.0.4+ ,mesos mysql ,jdk1.7+ , maven3.0+
集群、弹性扩容 多节点部署,通过竞争数据库锁来保证只有一个节点执行任务 通过zookeeper的注册与发现,可以动态的添加服务器。 支持水平扩容 使用Quartz基于数据库的分布式功能,服务器超出一定数量会给数据库造成一定的压力
任务分片 不支持 支持 支持
管理界面 支持 支持
高级功能 弹性扩容,多种作业模式,失效转移,运行状态收集,多线程处理数据,幂等性,容错处理,spring命名空间支持 弹性扩容,分片广播,故障转移,Rolling实时日志,GLUE(支持在线编辑代码,免发布),任务进
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值