4
回答
spring4+quartz2 集群后,启动两个tomcat,方法还是重复执行了,没法同一时刻确保一个任务执行
滴滴云服务器,限时包月0.9元,为开发者而生>>>   

我目前用spring4+quartz2.2.1搭建了定时任务集群,然后把项目分别部署到两个tomcat下执行,即每个tomcat启动了两个一样代码的定时任务(任务A和任务B,代码一样,触发时间都设置为每分钟执行),按理,在同一分钟,任务A执行了,那任务B应该是不可以执行的,但是现在打印日志发现,任务A和任务B在同一分钟都执行了,相当于我的spring+quartz集群设置并没有起作用,任务能跑起来,但是就是做不到同一时刻只能一个定时任务在跑,我的架构是spring+dubbo+quartz; 两个web的tomcat服务用的都是同一个service服务,和dubbo架构没关系吧,目前不知道我还少了什么出来才导致quartz集群不生效。。。

quartz.propertis配置如下:

#============================================================
# Configure Main Scheduler Properties
#===========================================================
org.quartz.scheduler.instanceName=MyClusteredScheduler
org.quartz.scheduler.instanceId=AUTO

#===========================================================
# Configure ThreadPool
#===========================================================

org.quartz.threadPool.class =org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount=25
org.quartz.threadPool.threadPriority=5

#===========================================================
# Configure JobStore
#===========================================================

org.quartz.jobStore.misfireThreshold=60000

org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
#org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.jobStore.useProperties=false
org.quartz.jobStore.dataSource=myDb
org.quartz.jobStore.tablePrefix=QRTZ_

#集群

org.quartz.jobStore.isClustered=true
org.quartz.jobStore.clusterCheckinInterval=20000

#===========================================================
# Configure Datasources
#===========================================================

org.quartz.dataSource.myDb.driver=oracle.jdbc.OracleDriver
org.quartz.dataSource.myDb.URL=jdbc:oracle:thin:@XXX :1521:ORCL
org.quartz.dataSource.myDb.user=XXX
org.quartz.dataSource.myDb.password=XXX
org.quartz.dataSource.myDb.maxConnections=30
org.quartz.dataSource.myDb.validationQuery=select 0 from dual

 

<无标签>
举报
594zzb
发帖于4天前 4回/125阅
顶部