Quartz作业存储方式
Quartz提供两种基本作业存储类型。第一种类型叫做RAMJobStore,第二种类型叫做JDBC作业存储。
一、对比
类型
|
优点
|
缺点
|
RAMJobStore
|
不要外部数据库,配置容易,运行速度快
|
因为调度程序信息是存储在被分配给JVM的内存里面,所以,当应用程序停止运行时,所有调度信息将被丢失。另外因为存储到JVM内存里面,所以可以存储多少个Job和Trigger将会受到限制
|
JDBC作业存储
|
支持集群,因为所有的任务信息都会保存到数据库中,可以控制事物,还有就是如果应用服务器关闭或者重启,任务信息都不会丢失,并且可以恢复因服务器关闭或者重启而导致执行失败的任务
|
运行速度的快慢取决与连接数据库的快慢
|
二、配置
1、以下是配置是内存存储
#============================================================================
# Configure RAMJobStore
#============================================================================
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
2、以下配置是数据库存储
#============================================================================
# Configure JobStore
#============================================================================
#===========================
#Configure JDBC-JobStoreTX
#===========================
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
org.quartz.jobStore.tablePrefix = QRTZ_
org.quartz.jobStore.dataSource = myDS
org.quartz.jobStore.useProperties = false
#============================
# Configure DataSource
#============================
org.quartz.dataSource.myDS.driver = oracle.jdbc.OracleDriver
org.quartz.dataSource.myDS.URL = jdbc:oracle:thin:@localhost:1521:test
org.quartz.dataSource.myDS.user = user
org.quartz.dataSource.myDS.password = password
org.quartz.dataSource.myDS.maxConnections = 10
分享到:
相关推荐
本篇文章将详细讲解两种在Spring MVC框架中实现定时任务的方法:Spring MVC自带的定时器以及Quartz与Spring的集成。 首先,我们来看看Spring MVC自带的定时任务。Spring MVC作为Spring框架的一个模块,主要处理HTTP...
Cron 表达式是一种时间格式,允许灵活地指定日期和时间,例如,每月最后一周的星期五每两小时触发一次。 3. **JobDetail**:包含 Job 的具体信息,如任务名称、任务组、执行任务的类以及可选的参数。执行任务的类...
Quartz和Spring Batch是两种非常重要的Java开源框架,它们在企业级应用开发中扮演着重要角色。Quartz主要用于任务调度,而Spring Batch则专注于批量处理。在这个“quartz_springbatch_dynamic”项目中,我们将看到...
8. **API和配置**:Quartz提供XML配置文件和编程API两种方式来设置调度。XML配置文件适合快速搭建,而编程API则提供了更大的灵活性。 总的来说,Java Quartz jar包为Java开发者提供了一套完善的定时任务解决方案,...
- JobDataMap:提供了一种存储和传递作业执行上下文数据的方式,以便在作业执行期间使用。 Quartz框架通过上述接口,实现了灵活而强大的任务调度功能,使其成为了Java开发中用于处理定时任务的重要工具之一。开发者...
- **作业存储配置**:包括RAM JobStore和JDBC JobStore两种方式。 #### 三、配置主题 - **主调度器配置设置**:主要包括调度器实例名称、日志级别等基本信息设置。 - **实例名**:每个调度器实例的唯一标识。 - ...
Spring 和 Quartz 是两个在 Java 开发中非常重要的框架,它们分别用于不同的领域。Spring 是一个全面的、开源的应用程序框架,主要用于简化企业级Java应用的开发。Quartz 则是一个强大的、开放源代码的作业调度框架...
传统的解决方法通常有两种:一种是在单个服务器上安装 Quartz,而其他服务器则不安装;另一种则是通过修改现有代码来实现任务的唯一性。这两种方法都有明显的缺点:前者牺牲了集群的优势,后者增加了开发和维护成本...
在描述中提到 "spring和quartz1.x及quartz2.x集成",这意味着我们要关注的是两种不同版本的 Quartz。Quartz 1.x 是较早的版本,而 Quartz 2.x 是后续的更新,增加了许多新特性,提升了性能和稳定性。集成时需要注意...
在处理定时任务时,Spring提供了两种常见的解决方案:`java.util.Timer` 和 Quartz。这两个工具各有特点,适用于不同的场景。下面我们将深入探讨它们的区别。 首先,`java.util.Timer` 是Java标准库中的一个简单...
* JobStore:RAWStore 和 DbStore 两种,job 和 trigger 都存放在 JobStore 中 工作流程: * scheduler 是 quartz 的独立运行容器,trigger 和 job 都可以注册在 scheduler 容器中,一个 job 可以有多个触发器,而...
Quartz支持两种类型的作业: - **无状态作业**:每次执行都是独立的,不会保留上下文信息。 - **有状态作业**:支持在多个执行之间共享状态信息,适用于需要跨执行传递数据的场景。 #### 十二、Quartz框架的其他...
在EJB 2.0版本中,提供了“本地”接口(Local Interface)和“远程”接口(Remote Interface)两种方式来访问EJB组件。 “本地”接口主要用于同一个Java EE应用内部的组件间通信,不需要进行网络调用,性能较高。而...
【标题】"TopShelf+Quartz.net demo" 演示了如何结合这两个库来构建一个可托管的Windows服务...通过理解和实践这个demo,开发者能够掌握这两种强大的工具,并将它们应用到实际的项目中,提升工作效率和系统自动化程度。
Quartz和SpringBatch是两种在Java开发中广泛使用的框架,Quartz用于任务调度,而SpringBatch则用于批量处理。在大型分布式系统中,结合这两者可以实现强大的定时任务集群功能,尤其是在需要对大量数据进行定时处理的...
Spring提供了一种集成Quartz的方式,使得我们可以方便地在Spring应用中管理和执行定时任务。本篇将深入探讨如何在Spring中启动和停止Quartz定时器。 首先,我们需要理解Spring和Quartz的基本概念。Spring是一个强大...
Quartz是一款开源的作业调度框架,它允许开发者在Java应用程序中定义和执行复杂的任务调度。Quartz的核心功能是创建、安排和执行Job(任务),这些Job可以是任何实现了`org.quartz.Job`接口的Java对象。Quartz通过...
Spring Quartz是一个强大的、开源的作业调度框架,允许开发者定义和执行复杂的定时任务。然而,当多个服务器实例并行运行时,如果不采取适当的策略,同一定时任务可能会在每个服务器上都执行,导致数据不一致和资源...