当前位置: 首页 > 知识库问答 >
问题:

石英调度器聚类

盛琪
2023-03-14

我有一个2节点的HA服务器。节点1处于活动状态,节点2处于备用状态。

我已经做了一个应用程序,并使用quartz api做集群。我已经把数据库里的所有桌子都做好了。

现在,我是否需要同时在节点或jst节点1中运行该模块,以便当节点1关闭时,应用程序自动在节点2中启动。

在两个节点中运行模块时,触发器和作业名应该相同还是不同?

ThreadPool.ThreadCount=10

ThreadPool.ThreadPriority=5

org.quartz.threadpool.threadsinheriticContextClassLoaderoFinitializingThread=true

--使用RAMJobStore

--如果使用RAMJobStore,请确保注释掉

--org.quartz.jobstore.tableprefix,org.quartz.jobstore.driverdelegateClass,org.quartz.jobstore.datasource

-org.quartz.jobstore.class=org.quartz.simple.ramjobstore

--使用JobStoreTX

--确保首先运行适当的脚本(在docs/dbtables下)以创建数据库/表

class=org.quartz.jobstore.jobstorex

--使用DriverDelegate

driverdelegateClass=org.quartz.impl.jdbcjobstore.stdjdbcdelegate

--新的聚类conf

org.quartz.jobstore.isClustered=true

org.quartz.scheduler.instanceId=AUTO

org.quartz.scheduler.instanceId=AUTO

instanceName=MyClusteredScheduler

--用表前缀配置JDBCJobStore

tablePrefix=QRTZ_

--使用数据源

org.quartz.jobstore.datasource=qzDS

--定义要使用的数据源

org.quartz.datasource.qzds.driver=oracle.jdbc.driver.OracleDriver

org.quartz.datasource.qzds.url=jdbc:oracle:thin:@10.172.16.147:1521:emadb0

User=BLuser

org.quartz.datasource.qzds.password=BLuser

org.quartz.datasource.qzds.maxConnections=30

共有1个答案

袁运良
2023-03-14

根据:http://quartz-scheduler.org/documentation/quartz-2.x/configuration/configJDBCJobStoreClustering

特别是:

集群目前只适用于JDBC-Jobstore(JobStoreTX或JobStoreCMT),基本上是通过集群的每个节点共享相同的数据库来工作的。

您应该启动所有的节点,最快的节点将触发作业,其他节点将知道它。

 类似资料:
  • 在使用Quartz Scheduler 1.8.6版的应用程序中,当作业未完成时,我们遇到了一个触发器卡住的问题。 例如,我们有ssh调用或数据库查询的作业。如果这些作业挂起(因为ssh调用没有终止,或者select语句有一个表锁),那么我将无法再触发这些作业。触发器被卡住,直到我强制重新启动调度程序。 我已经试过了。中断(触发器)和调度程序。重新调度触发器()。我试着移除触发器并重新创建它。我已

  • 是否可以添加/删除/修改在Quartz Spring Boot中动态安排的作业(在运行时),由使用我的门户的最终用户。由于计划无法从外部访问,我不知道有什么办法。基本上,我需要将所有的时间表信息存储到数据库中并访问它们。Im构建的门户将被大量用户使用,实现这一目标的正确解决方案是什么? 否则我可以像下面这样使用cron吗 每5 mns扫描一次作业以实现此目的。

  • 乡亲们, 我正在尝试用Quartz调度器实现Spring boot,以便在java中调度作业。我的经理建议根据作业id为所有作业使用具有不同实施服务的单个作业。但我不能说服所有服务实施都使用单个作业。 请指导我使用多个服务类的单个作业或为每个服务编写每个作业。 提前感谢。。

  • 我有一个带spring应用程序的quartz调度器。 每次quartz触发作业时,作业都会创建一个列表(比如狗列表)。下次quartz触发另一个作业时,我需要访问上一个作业创建的列表。我怎样才能做到这一点。 我不能使用该对象的单个实例。因为这个对象可以被创建自己列表的其他进程使用(比如奶牛列表、鸟类列表等) 我要寻找的效果类似于实例变量,并在循环中执行某些操作,每次在循环中更新实例变量时,实例变量

  • 问题内容: 我正在寻找python的企业任务计划程序,就像石英是Java一样。要求: 持久:如果进程重新启动或计算机重新启动,则所有作业必须保留在该位置,并且必须在重新启动后解雇。 作业必须在事务中进入和退出调度程序(即,如果某个数据库操作失败,在与调度程序无关的数据库中,则作业必须没有退出或进入调度程序)。 可扩展性。取决于项目成功的程度,但是我更希望从一开始就知道我不是从无到有来。 可配置性: