【问题标题】:Quartz Scheduler implementationQuartz调度器实现
【发布时间】:2016-03-27 08:35:00
【问题描述】:

使用 Quartz Scheduler 持久化数据的内部机制是什么? 我浏览了互联网,但没有找到明确的描述。 如果您建议在 hibernate 平台上工作,那就太好了。

【问题讨论】:

    标签: quartz-scheduler


    【解决方案1】:

    当你在你的项目中使用 Quartz Scheduler 时,你应该有一个名为 quartz.properties 的属性文件。在此文件中,您应该使用参数确定您的持久性机制:org.quartz.jobStore.class 该参数的取值如下:

    1. org.quartz.impl.jdbcjobstore.JobStoreCMT:意思是你想持久化在数据库中,事务由容器管理(如Weblogic,JBoss,...)
    2. org.quartz.impl.jdbcjobstore.JobStoreTX:这意味着你想在数据库中持久化并且事务不是由容器管理的。此选项主要在您将 Quartz Scheduler 作为独立应用程序运行时使用。
    3. org.quartz.simpl.RAMJobStore: 这个选项实际上不推荐在生产环境中使用,因为根据这个参数,Quartz 将作业和触发器只保存在 RAM 中!
    4. org.terracotta.quartz.TerracottaJobStore:最后一个选项是使用 Terracotta Server 作为持久化单元,Quartz 说这是最快的方式。

    我自己更喜欢第一个选项,我认为它更直接且更可靠。 您可以阅读有关此配置的更多信息here。 而关于hibernate,quartz会管理持久化任务,比如回滚和持久化,你不会参与这个过程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 2013-03-17
      相关资源
      最近更新 更多