Cri*_*ris 13 spring weblogic quartz-scheduler
我在集群模式下使用Quartz
由于过度调用导致数据库级别出现一些行锁争用:
org.quartz.jobStore.selectWithLockSQL
"SELECT*FROM QRTZ_LOCKS WHERE SCHED_NAME =:"SYS_B_0"AND LOCK_NAME =:1 FOR FORDDATE"
我读石英文档,但我仍然不清楚为什么执行上面的查询.
这个行锁的目的是什么?
问候
在集群模式下部署时,quartz 使用锁表来协调多个调度程序。在集群中,只有一个节点应该触发触发器,因此使用锁来避免多个节点获取相同的触发器。
集群目前仅适用于 JDBC-Jobstore(JobStoreTX 或 JobStoreCMT),并且本质上通过让集群的每个节点共享相同的数据库来工作。负载平衡会自动发生,集群的每个节点都尽可能快地触发作业。当触发器的触发时间发生时,第一个获取它(通过在其上放置锁)的节点是将触发它的节点。
| 归档时间: |
|
| 查看次数: |
4403 次 |
| 最近记录: |