Quartz到底能不能集群
发布网友
发布时间:2022-05-07 14:40
我来回答
共1个回答
热心网友
时间:2022-06-30 08:42
橥倍际怯蓂uartz,那么就有可能出现集群,如果所有的都是使用ramStore的形式存储任务,则只需要简单的定义管理器
<bean name="quartzScheler"
class="org.springframework.scheling.quartz.SchelerFactoryBean"
<property name="triggers"<list<ref bean="XXTrigger"/</list</property</bean配置这个最主要的文件就已经可以完成多个模块使用quartz,但是要求的是这些模块都是需要使用ramstore的形式存储。
如果出现两个方式的存储怎么办: 比如一个模块需要是ramstore,另一个模块需要使用的是CMT或者TX存储方式,这个时候当然首要的是配置各自的quartz.properties文件了,配置各自的存储方式,然后再配置各自的管理器,如果只是简单的定义一个管理器是没有作用的,并不能满足两个方式,这个时候就需要为各自的管理器(scheler)进行注册,在spring里面这些scheler都是注册在了一个SchelerRepository中的。 SchelerRepository存储实例的方式是放在map里面了,因此要想单独使用实例,则只需要配置一个规定的kay就可以了,例如下面这样:
<bean name="quartzScheler"
class="org.springframework.scheling.quartz.SchelerFactoryBean"
<property name="triggers"<list<ref bean="XXTrigger"/</list</property
<property name="schelerName"
</property</bean可以声明多个。各自使用各自定义的名字,这样scheler就分有多个实例,可以分别启动、停止了,从而达到集群个各自管理scheler的目的了!