spring-boot - Springboot Quartz:构建两个调度器(本地和集群)
问题描述
我不清楚哪个是我需要设置调度程序属性的地方。
我需要配置两个调度器:
- 当地的
- 聚集的
如何为我的本地和集群调度程序设置另一个属性?
spring:
datasource:
...
quartz:
job-store-type: jdbc
properties:
org.quartz.jobStore.isClustered: true
org.quartz.scheduler.instanceId: AUTO
解决方案
要仅运行作业的一个实例,您必须在创建 JobDetail 之前在 Job 类上添加注释 @DisallowConcurrentExecution。在这种情况下,JobDetail 将在 DB 中标记为 Is_clustered。否则,如果您在添加注释之前创建 JobDetail,则 JobDetail 保持非集群状态。所以我看到了一个解决方案,在使用 JDBC 作业存储时分离作业并用注释标记它们。
推荐阅读
- angular - 这个WARN错误有什么问题:运行Angular单元测试时找不到图标相交
- typescript - 如果子类不调用父类的覆盖函数,我该怎么做,TypeScript 会抛出错误
- python - 创建唯一项目的 df 和每个唯一项目的另一列的最大值
- python - 有没有办法比较存储的值和用户的输入以删除 django 视图中的重复项?
- facebook - 无法将 Facebook 评论插件添加到网站
- python - ImportError:pycurl:libcurl 链接时 ssl 后端(schannel)不包括编译时 ssl 后端(openssl)
- javascript - 如何在 Formik 的选项标签的值中传递对象?
- python - 通过实现 Python、RabbitMQ、NodeJS 向网站显示消息
- r - 在 R 的数字数据框中使用函数 na_ma
- windows - 我可以指定一个不是正方形或矩形的特定非客户区吗?