`

spring Quartz&Task之间的对比

阅读更多

摘自https://blog.csdn.net/swl979623074/article/details/79466016

Quartz

默认多线程异步执行

单个任务时,在上一个调度未完成时,下一个调度时间到时,会另起一个线程开始新的调度。业务繁忙时,一个任务会有多个调度,可能导致数据处理异常。

多个任务时,任务之间没有直接影响,多任务执行的快慢取决于CPU的性能

触发方式 

SimpleTrigger:value=2000 每隔两秒触发

CronTrigger:value=”0 0 12 * * ?” 每天中午12点触发

需要在配置文件中实现配置Job

能被集群实例化,支持分布式部署

使用JobStoreCMT(JDBCJobStore的子类),Quartz 能参与JTA事务;Quartz 能管理JTA事务(开始和提交)在执行任务之间,这样,任务做的事就可以发生在JTA事务里。

精简配置:定时任务Quartz

 

Task

默认单线程同步执行

单个任务时,当前次的调度完成后,再执行下一次任务调度

多个任务时,一个任务执行完成后才会执行下一个任务。若需要任务能够并发执行,需手动设置线程池

触发方式: 

与Quartz的CronTrigger的表达式类似

可以使用注解标注定时任务

比较:

实现,Task注解实现方式,比较简单。Quartz需要手动配置Jobs。

任务执行,Task默认单线程串行执行任务,多任务时若某个任务执行时间过长,后续任务会无法及时执行。Quartz采用多线程,无这个问题。

调度,Task采用顺序执行,若当前调度占用时间过长,下一个调度无法及时执行; 

Quartz采用异步,下一个调度时间到达时,会另一个线程执行调度,不会发生阻塞问题,但调度过多时可能导致数据处理异常

部署,Quartz可以采用集群方式,分布式部署到多台机器,分配执行定时任务

--------------------- 

作者:萌太隆 

来源:CSDN 

原文:https://blog.csdn.net/swl979623074/article/details/79466016 

版权声明:本文为博主原创文章,转载请附上博文链接!

分享到:
评论

相关推荐

    springtask 和 quartz +ssh简单示例

    springtask 和 quartz +ssh简单示例springtask 和 quartz +ssh简单示例springtask 和 quartz +ssh简单示例springtask 和 quartz +ssh简单示例

    spring之定时任务实现(spring-task和quartz等不同方式)

    spring之定时任务实现(spring-task和quartz,注解,非注解等不同方式),附文档+源码工程,本人已测试通过才上传,希望对大家有所帮助

    Spring-quartz-demo Spring4.1.6 + quartz2.2.1

    本项目来源与网络,本人对项目...直接通过mvn 倒入项目,在Spring-quartz-demo\src\main\webapp\sql 有sql 建立数据库,表 启动tomcat 直接访问http://localhost:8080/Spring-quartz-demo/task/taskList.htm 就可以使用

    spring task quartz

    spring task spring task quartzquartz

    spring + quartz 集群配置

    java + quartz实现定时任务,实现集群配置,在集群环境下多节点运行定时Quartz定任务,就会存在重复处理任务的现象,为解决这一问题,下面我将介绍使用 Quartz 的 TASK ( 12 张表)实例化到数据库,基于数据库自动...

    Spring整合Quartz Job以及Spring Task的实现方法

    下面小编就为大家分享一篇Spring整合Quartz Job以及Spring Task的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    java Quartz定时器任务与Spring task定时的几种实现方法

    本篇文章主要介绍了java Quartz定时器任务与Spring task定时的几种实现方法的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

    java 中Spring task定时任务的深入理解

    java 中Spring task定时任务的深入理解 ...同时,spring还支持使用Java自带的Timer定时器和Quartz定时框架。限于篇幅,这里将只介绍spring task的使用。 其实,官方文档已经介绍地足够详细,只不过都是英

    Quartz_Job+Scheduling_Framework

    也许大多数人听说 Quartz 是在学习或使用 Spring 的时 候,也就是 Spring 整合了 Quartz。而我也不例外,同样是在春天里得悉了这块石英。 当初公司一个项目中有些定时候任务,原来是用 JDK 的 TaskTimer 来实现的,...

    SpringMvc自动任务调度之task实现项目源码

    但如果只是简单的跑个任务其实spring升级到3后已经自带任务调度器了,相比之下Spring task无论是理解还是使用都简单很多。但是Quartz有线程和线程管理以及集群等高级特性,所以大家可以自行选择了。不过一般情况下,...

    Java课程实验 Spring Boot 任务管理(源代码+实验报告)

    Spring提供了TaskScheduler接口和相关实现,用于任务调度。使用TaskScheduler,你可以创建计划执行、定期执行或延迟执行的任务。 3.使用Spring的异步任务(AsyncTask): 使用@Async注解可以将普通的方法异步执行,...

    spring定时任务必须要的10个jar包

    quartz-all-1.6.0.jar spring-asm-3.2.0.M1.jar spring-beans-3.2.0.M1.jar spring-context-3.2.0.M1.jar spring-context-support-3.2.0.M1.jar spring-core-3.2.0.M1.jar 以上是jar列表,如果需要实例或配置信息给...

    spring定时任务的两种实现

    内含配置文件与代码示例 1.使用Quartz,这是一个功能比较强大的的调度器,可以让你的程序在指定时间执行,也可以按照某...2.Spring3.0以后自带的task,可以将它看成一个轻量级的Quartz,而且使用起来比Quartz简单许多.

    spring-boot-framework-master.zip

    工作和学习之余的整理,完全基于spring boot的框架,无xml,整合了redis、ehcache、mail、quartz、task、mybatis、shiro、swaggerui等,实现了本地和分布式缓存,前端基于smartadmin,包括 rabbitmq、mongodb、报表...

    time-task-demo.zip

    SpringBoot实现定时任务的四种方式: 1.Timer, 2.Timer, 3.Spring Task 4.Quartz。 time-task-demo.zip

    Quartz Job Scheduling Framework 中文版

    也许大多数人听说 Quartz 是在学习或使用 Spring 的时候,也就是 Spring 整合了 Quartz。而我也不例外,同样是在春天里得悉了这块石英。 当初公司一个项目中有些定时候任务,原来是用 JDK 的 TaskTimer 来实现的,...

    spring-boot-demo

    spring-boot整合各类服务或组件相关Demo,如:spring-boot-demo-cache-redis、spring-boot-demo-elasticsearch...spring-boot-demo-orm-mybatis、spring-boot-demo-cache-ehcache、spring-boot-demo-task-quartz等等。

    Spring实现动态修改时间参数并手动开启关停操作

    spring实现定时任务的方式有三种,分别是java自带的timer类、spring task和quartz三种。本文只介绍spring自带的task和第三方quartz,感兴趣的朋友参考下吧

    Spring Boot中Bean定义方调用方式解析

    主要介绍了Spring Boot中Bean定义方调用方式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    一个用于深入学习并实战Spring Boot的项目

    spring boot demo是一个用于深度学习并实战...强大的ORM框架)、upload( 本地文件上传和七牛云文件上传)、redis( 缓存)、ehcache( 缓存)、email( 发送各种类型邮件)、task( 基础定时任务)、quartz( 动态管理定时任务)等

Global site tag (gtag.js) - Google Analytics