Quartz之quartz.properties配置⽂件
配置⽂件的位置与加载顺序
Quartz默认加载⼯程⽬录下的quartz.properties,如果⼯程⽬录下没有,就会去加载quartz.jar包下⾯的quartz.properties⽂件。
组成部分
调度器属性
生活中的常见常量元素线程池属性
作业存储设置
插件配置
调度器属性:
org.quartz.scheduler.instanceName属性⽤来区分特定的调度器实例,可以按照功能⽤途来给调度器起名。
org.quartz.scheduler.instanceId属性和前者⼀样,也允许任何字符串,但这个值必须是在所有调度器实例中是惟⼀的,尤其是在⼀个集当中,作为集的唯⼀key。假如你想Quartz帮你⽣成这个值的话,可以设置为AUTO。与上⾯那个属性的区别主要是,instanceId主要是指物理上的区分,⽽instanceName是逻辑上的区分。
线程池属性:
threadCount属性设置Quartz⼯作线程数量,最⼩值为1,⽆最⼤值,但是最好不超过100,不然服务器性能会⼤⼤下降。
threatPriority属性设置线程优先级,最⼩值1,最⼤值10,⼀般情况下设置为5,默认值也是5。主要⽤在集中设置。
org.quartz.threadPool.class属性设置线程池属性,可以根据⾃⼰的需求设置可伸缩的线程池,但是必须按照其规范创建接⼝。⼀般默认使⽤其⾃带的线程池属性类:org.quartz.simpl.SimpleThreadPool
作业存储设置:
描述了在调度器实例的⽣命周期中,Job和Trigger信息是如何被存储的。⽐如说:究竟是保存在内存中,还是什么数据库中等
插件配置:
满⾜特定需求⽤到的Quartz插件的配置
导航代码错误001最后,配上⼀般项⽬中常⽤的quartz.properties配置⽂件的配置
# Default Properties file for use by StdSchedulerFactory
# to create a Quartz Scheduler Instance, if a different
# properties file is not explicitly specified.
#
# ===========================================================================
properties文件用什么打开# Configure Main Scheduler Properties 调度器属性
# ===========================================================================
org.quartz.scheduler.instanceName: DefaultQuartzScheduler
org.quartz.scheduler.instanceid:AUTO
org.i.export: false
org.i.proxy: false
org.quartz.scheduler.wrapJobExecutionInUserTransaction: false
# ===========================================================================
# Configure ThreadPool 线程池属性
# ===========================================================================
#线程池的实现类(⼀般使⽤SimpleThreadPool即可满⾜⼏乎所有⽤户的需求)
org.quartz.threadPool.class: org.quartz.simpl.SimpleThreadPool
#指定线程数,⾄少为1(⽆默认值)(⼀般设置为1-100直接的整数合适)
org.quartz.threadPool.threadCount: 10
#设置线程的优先级(最⼤为java.lang.Thread.MAX_PRIORITY 10,最⼩为Thread.MIN_PRIORITY 1,默认为5)
org.quartz.threadPool.threadPriority: 5
#设置SimpleThreadPool的⼀些属性
#设置是否为守护线程
#org.quartz.threadpool.makethreadsdaemons = false
#org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread: true
#org.quartz.threadpool.threadsinheritgroupofinitializingthread=false
#线程前缀默认值是:[Scheduler Name]_Worker
#org.quartz.threadpool.threadnameprefix=swhJobThead;
#org.quartz.threadpool.threadnameprefix=swhJobThead;
html网页设计代码简单# 配置全局监听(TriggerListener,JobListener) 则应⽤程序可以接收和执⾏预定的事件通知
# ===========================================================================
# Configuring a Global TriggerListener 配置全局的Trigger
# MyTriggerListenerClass 类必须有⼀个⽆参数的构造函数,和属性的set⽅法,⽬前2.2.x只⽀持原始数据类型的值(包括字符串)
# ===========================================================================
#iggerListener.NAME.class = com.swh.MyTriggerListenerClass
#iggerListener.NAME.propName = propValue
#iggerListener.NAME.prop2Name = prop2Value
# ===========================================================================
# Configuring a Global JobListener 配置全局的Job
# MyJobListenerClass 类必须有⼀个⽆参数的构造函数,和属性的set⽅法,⽬前2.2.x只⽀持原始数据类型的值(包括字符串)
# ===========================================================================
#org.quartz.jobListener.NAME.class = com.swh.MyJobListenerClass
#org.quartz.jobListener.NAME.propName = propValue
lookup的用法和搭配#org.quartz.jobListener.NAME.prop2Name = prop2Value
# ===========================================================================
# Configure JobStore 存储调度信息(⼯作,触发器和⽇历等)
# ===========================================================================
# 信息保存时间默认值60秒
org.quartz.jobStore.misfireThreshold: 60000
#保存job和Trigger的状态信息到内存中的类
org.quartz.jobStore.class: org.quartz.simpl.RAMJobStore
# ===========================================================================
# Configure SchedulerPlugins 插件属性配置
# ===========================================================================
# ⾃定义插件
#org.quartz.plugin.NAME.class = com.swh.MyPluginClass
#org.quartz.plugin.NAME.propName = propValue
#org.quartz.plugin.NAME.prop2Name = prop2Value
#配置trigger执⾏历史⽇志(可以看到类的⽂档和参数列表)
org.iggHistory.class = org.quartz.plugins.history.LoggingTriggerHistoryPlugin
org.iggerFiredMessage = Trigger {1}.{0} fired job {6}.{5} at\: {4, date, HH\:mm\:ss MM/dd/yyyy}
org.iggerCompleteMessage = Trigger {1}.{0} completed firing job {6}.{5} at {4, date, HH\:mm\:ss MM/dd/yyyy} with resulting trigg er instruction code\: {9}
#配置job调度插件 quartz_jobs(jobs and triggers内容)的XML⽂档
#加载 Job 和 Trigger 信息的类(1.8之前⽤:org.l.JobInitializationPlugin)
org.quartz.plugin.jobInitializer.class = org.l.XMLSchedulingDataProcessorPlugin
#指定存放调度器(Job 和 Trigger)信息的xml⽂件,默认是classpath下l
org.quartz.plugin.jobInitializer.fileNames = my_l
#org.quartz.plugin.jobInitializer.overWriteExistingJobs = false
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
#⾃动扫描任务单并发现改动的时间间隔,单位为秒
org.quartz.plugin.jobInitializer.scanInterval = 10
#覆盖任务调度器中同名的jobDetail,避免只修改了CronExpression所造成的不能重新⽣效情况
org.quartz.plugin.jobInitializer.wrapInUserTransaction = false
# ===========================================================================
# Sample configuration of ShutdownHookPlugin ShutdownHookPlugin插件的配置样例‹
# ===========================================================================
#org.quartz.plugin.shutdownhook.class = \org.quartz.plugins.management.ShutdownHookPlugin
#org.quartz.plugin.shutdownhook.cleanShutdown = true
#
# Configure RMI Settings 远程服务调⽤配置
#
#如果你想quartz-scheduler出⼝本⾝通过RMI作为服务器,然后设置“出⼝”标志true(默认值为false)。
#org.i.export = false
#主机上rmi注册表(默认值localhost)
#org.i.registryhost = localhost
#注册监听端⼝号(默认值1099)
#org.i.registryport = 1099
#创建rmi注册,false/never:如果你已经有⼀个在运⾏或不想进⾏创建注册
# true/as_needed:第⼀次尝试使⽤现有的注册,然后再回来进⾏创建
# always:先进⾏创建⼀个注册,然后再使⽤回来使⽤注册
#org.i.createregistry = never
#Quartz Scheduler服务端端⼝,默认是随机分配RMI注册表
数据类型tinyint是什么类型#org.i.serverport = 1098
#org.i.serverport = 1098
#true:链接远程服务调度(客户端),这个也要指定registryhost和registryport,默认为false # 如果export和proxy同时指定为true,则export的设置将被忽略
#org.i.proxy = false
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论