繁体   English   中英

如何更改群集石英作业的时间表?

[英]How to change schedule of clustered quartz job?

据我所试,我必须在数据库中手动更改CRON_TRIGGERS表。 脏...

有什么办法可以像这样吗?

  1. 有2个应用程序正在运行,两个应用程序在.properties文件中的时间表都定义为“每分钟”,因此可以正常工作
  2. 我停止了一个实例并重新配置(在.properties文件中更改),因此计划是“每个小时”
  3. 我启动实例。 现在,我希望该实例进行检查,以确保该作业已在DB中定义并在那里更新时间表。 现在无法使用网站http://www.objectpartners.com/2013/07/09/configuring-quartz-2-with-spring-in-clustered-mode/中的配置来进行

或典型的解决方案是什么?

  1. 所以我想您说.properties文件时,实际上是指spring bean XML文件。
  2. 您用不同的时间表静态配置相同的作业没有任何意义。 如果出于某种原因,一个实例重新启动,它将自动应用自己的日程表。 如果是静态配置的,则您的作业触发器在所有实例上都应该相同
  3. 如果在SchedulerFactoryBean正确设置了<property name="overwriteExistingJobs" value="true"/> ,它将自动更新作业计划。
  4. 您永远不要手动修改数据库。 始终通过其API更新调度程序。

尝试这样:

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="jobDetails">
            <list>
                <ref bean="yourJobDetail" />
            </list>
        </property>
        <property name="triggers">
            <list>
                <ref bean="yourJobTrigger" />
            </list>
        </property>
        <property name="configLocation" value="file:${HOME}/yourProperties.properties" />
        <!-- Commented, because don't work with autocommit = false on spring data source -->
        <!-- <property name="dataSource" ref="mainDataSource"/> -->
        <property name="transactionManager" ref="mainTransactionManager" />
        <property name="autoStartup" value="true" />
        <property name="applicationContextSchedulerContextKey" value="applicationContext" />
        <property name="jobFactory">
            <bean class="FactoryForJobWithInjectionOfSpringBbean" />
        </property>
        <!-- Will update database cron triggers to what is in this jobs file on each deploy. Replaces all previous trigger and job data that 
            was in the database. YMMV -->
        <!-- dont work properly with cluster -->
        <!-- <property name="overwriteExistingJobs" value="true" /> -->
    </bean>

不幸的是,我认为:

<property name="overwriteExistingJobs" value="true" />

在群集模式下无法正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM