Quartz Job Scheduling Framework[翻译]附录 A. Quartz 配置参考 (第五部分)

九. 配置 JobStoreCMT

JobStoreCMT 提供了另一类型的 JobStore,它能工作于一个关系型数据库之下。你能通过设置 org.quartz.jobStore.class 属性来选用 JobStoreCMT

org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreCMT

当使用 JobStoreCMT 时,可设置一些附加属性,它们是表 A.5 所示的。

表 A.5. 配置 Quartz JobStoreCMT 的属性
名称 必须 类型 默认值
org.quartz.jobStore.nonManagedTXDataSource String null
org.quartz.jobStore.dontSetNonManagedTX-
ConnectionAutoCommitFalse
Boolean false
org.quartz.jobStore.txIsolationLevelReadCommited Boolean false

·org.quartz.jobStore.nonManagedTXDataSource

JobStoreCMT 需要一个(即第二个) 数据源,其中包含的连接不作为容器管理事物的一部分。这个属性值必须是在属性配置文件中定义的某一个 DataSource 的名称。这个数据源必须包含非 CMT 的连接,换句话说就是,其中的连接的 commit()rollback() 方法能够由 Quartz 直接且合法的调用。

·org.quartz.jobStore.dontSetNonManagedTXConnectionAutoCommitFalse

这个属性意义同 org.quartz.jobStore.dontSetAutoCommitFalse,只是它作用于 nonManagedTXDataSource

·org.quartz.jobStore.txIsolationLevelReadCommited

当设置为 true,这一属性就告诉 Quartz 去调用不受管理 JDBC 连接的 setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITED) 方法。这有助于防止某些数据库(如 DB2) 在高负载及长事物发生锁超时的现象。

关于 JDBC JobStore 更多的信息,参见第六章,"JobStore 和持久化"

本文链接 https://yanbin.blog/quartz-job-scheduling-framework-appendix-5/, 来自 隔叶黄莺 Yanbin Blog

[版权声明] Creative Commons License 本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。

Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments