2 ノードの HA サーバーがあります。ノード 1 はアクティブで、ノード 2 はスタンバイです。
1 つのアプリケーションを作成し、Quartz API を使用してクラスタリングを行いました。私はデータベース内のすべてのテーブルを作成しました。
ノード1がダウンしたときにアプリケーションがノード2で自動的に起動するように、ノードまたはjstノード1の両方でモジュールを実行する必要がありますか.
両方のノードでモジュールを実行している間、トリガーとジョブ名は同じにする必要がありますか?
Quartz.properties:
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 10
org.quartz.threadPool.threadPriority = 5
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread = true
-- RAMJobStore の使用
-- RAMJobStore を使用している場合は、必ずコメントアウトしてください。
-- org.quartz.jobStore.tablePrefix、org.quartz.jobStore.driverDelegateClass、org.quartz.jobStore.dataSource
-org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
-- JobStoreTX の使用
-- 最初に適切なスクリプト (docs/dbTables の下) を実行して、データベース/テーブルを作成してください。
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
-- DriverDelegate の使用
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
-- クラスタリング用の新しい設定
org.quartz.jobStore.isClustered = true
org.quartz.jobStore.clusterCheckinInterval = 20000
org.quartz.scheduler.instanceId = 自動
org.quartz.scheduler.instanceId = 自動
org.quartz.scheduler.instanceName = MyClusteredScheduler
-- テーブル接頭辞を使用して JDBCJobStore を構成する
org.quartz.jobStore.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
org.quartz.dataSource.qzDS.user = BLuser
org.quartz.dataSource.qzDS.password = BLuser
org.quartz.dataSource.qzDS.maxConnections = 30