• Spring实战 MethodInvokingJobDetailFactoryBean使用与分析


    定义一个Job类

    public class OffsetsQuartz {
    
        public void jobQuartz() {
            String[] clusterAliass = SystemConfigUtils.getPropertyArray("kafka.eagle.zk.cluster.alias", ",");
            for (String clusterAlias : clusterAliass) {
                execute(clusterAlias);
            }
        }
    }
    
    <bean id="offsetsSchedule" class="org.smartloli.kafka.eagle.web.quartz.OffsetsQuartz" />
    	<!-- Method for configuring scheduling specific execution. -->
    	<!-- task1 -->
    	<bean id="offsetsDetail"
    		class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    		<property name="targetObject" ref="offsetsSchedule" />
    		<property name="targetMethod" value="jobQuartz" />
    		<property name="concurrent" value="false" />
    	</bean>
    	<!-- Configure the trigger time for scheduling execution. -->
    	<bean id="offsetsTrigger"
    		class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
    		<property name="jobDetail" ref="offsetsDetail" />
    		<property name="cronExpression">
    			<!--  per 5min 每5分钟重启一次-->
    			<value>0 0/5 * * * ?</value>
    		</property>
    	</bean>
    	<!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序  -->
    	<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    		<property name="triggers">
    			<list>
    				<!-- All scheduling lists. -->
    				<ref local="offsetsTrigger" />
    			</list>
    		</property>
    	</bean>
    
  • 相关阅读:
    PHP 缓存技术
    redis雪崩
    【Redis】- 缓存击穿
    Memcache 与 Memcached 的区别
    数据库设计:范式与反范式
    Thinkphp5多数据库切换
    PHP 分布式集群中session共享问题以及session有效期的设置
    Nginx使用upstream实现动静分离
    rsync 服务快速部署手册
    tp5 为什么使用单例模式
  • 原文地址:https://www.cnblogs.com/leihuazhe/p/9154232.html
Copyright © 2020-2023  润新知