全国统一服务热线

400-035-8011

  • 洛阳达内教育IT培训学校
  • 洛阳达内教育IT培训学校
  • 洛阳达内教育IT培训学校

了解quartz体系结构

 了解quartz体系结构:
  (1):任务Job:
  (2):触发器Trigger描述触发Job执行的触发时间规则。主要有SimpleTrigger和CronTrigger两个子类。当仅需触发一次或者以固定时间间隔周期执行,SimpleTrigger是较适合的选择;而CronTrigger则可以通过Cron表达式定义出各种复杂时间规则的调度方案:如周一、周三、周五下午5:00执行。
  (3):调度器(scheduler)代表一个Quartz的独立运行容器,Trigger和JobDetails可以注册到Scheduler中,两者在Scheduler中拥有各自的组及名称,组及名称是Scheduler查找定位容器中某一对象的依据,Trigger的组及名称必须,JobDetail的组和名称也必须(但可以和Trigger的组和名称相同,因为它们是不同类型的)。Scheduler定义了多个接口方法,允许外部通过组及名称访问和控制容器中Trigger和JobDetail。Scheduler可以将Trigger绑定到某一JobDetail中,这样当Trigger触发时,对应的Job就被执行。一个Job可以对应多个Trigger,但一个Trigger只能对应一个Job。可以通过SchedulerFactory创建一个Scheduler实例。
  一个Job可以对应多个Trigger,一个Trigger只能对应一个Job
 quartz简单的实现:
  步骤:(1):首先需要生成一个调度器工厂SchedulerFactory;

  (2):然后通过getScheduler()方法从调度器工厂里得到调度器实例,首先查找有没有这样的调度器,没有的话,就生成一个,有的话直接返回。所以得到的一般是单例,即默认的调度器;

了解quartz体系结构

 Quartz集群配置
  quartz集群是通过数据库表来感知其他的应用的,各个节点之间并没有直接的通信。只有使用持久的JobStore才能完成Quartz集群。
  数据库表:以前有12张表,现在只有11张表,现在没有存储listener相关的表,多了QRTZ_SIMPROP_TRIGGERS表:
  Table nameDescription
  QRTZ_CALENDARS存储Quartz的Calendar信息
  QRTZ_CRON_TRIGGERS存储CronTrigger,包括Cron表达式和时区信息
  QRTZ_FIRED_TRIGGERS存储与已触发的Trigger相关的状态信息,以及相联Job的执行信息
  QRTZ_PAUSED_TRIGGER_GRPS存储已暂停的Trigger组的信息
  QRTZ_SCHEDULER_STATE存储少量的有关Scheduler的状态信息,和别的Scheduler实例
  QRTZ_LOCKS存储程序的悲观锁的信息
  QRTZ_JOB_DETAILS存储每一个已配置的Job的详细信息
  QRTZ_SIMPLE_TRIGGERS存储简单的Trigger,包括重复次数、间隔、以及已触的次数
  QRTZ_BLOG_TRIGGERSTrigger作为Blob类型存储
  QRTZ_TRIGGERS存储已配置的Trigger的信息
  QRTZ_SIMPROP_TRIGGERS
  QRTZ_LOCKS就是Quartz集群实现同步机制的行锁表,包括以下几个锁:CALENDAR_ACCESS、JOB_ACCESS、MISFIRE_ACCESS、STATE_ACCESS、TRIGGER_ACCESS。

尊重原创文章,转载请注明出处与链接:http://www.mxiao.cn/1541/new/141154/违者必究! 以上就是洛阳达内教育IT培训中心 小编为您整理了解quartz体系结构的全部内容。

推荐课程 / RECOMMENDED COURSE

  • 洛阳Java互联网架构师培训班

  • 洛阳达内Python人工智能培训班

  • 洛阳达内c++语言开发培训班

  • 洛阳达内UID全链路设计培训班

  • 查看更多>>

定制专属于你的课程

10秒登记,定制专属于你的课程方案

填写下表,让专业老师根据你的性格爱好选择最适合你的。

版权所有:洛阳达内教育IT培训中心

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-035-8011