• Quartz Scheduler 开源框架 学习记录


     1.简介
     2.优点
     3.核心元素介绍
     4.线程视图
     5.数据存储
    
    1. 简介

    Quartz 是 OpenSymphony 开源组织在任务调度领域的一个开源项目,完全基于 Java 实现。该项目于 2009 年被 Terracotta 收购,目前是 Terracotta 旗下的一个项目。 http://www.quartz-scheduler.org/ 这里可以下载 Quartz 的发布版本及其源代码。

    1. 优点
    • 强大的调度功能,例如支持丰富多样的调度方法,可以满足各种常规及特殊需求;
    • 灵活的应用方式,例如支持任务和调度的多种组合方式,支持调度数据的多种存储方式;
    • 分布式和集群能力,Terracotta 收购后在原来功能基础上作了进一步提升。本文暂不讨论该部分内容
    • 作为 Spring 默认的调度框架,Quartz 很容易与 Spring 集成实现灵活可配置的调度功能。
    1. 核心元素介绍
    • scheduler 任务调度器:可以理解为实际执行调度的控制器。
      在 Quartz 中, scheduler 由 scheduler 工厂创建:
      (1)DirectSchedulerFactory 
      (2)StdSchedulerFactory。 
      Scheduler 主要有三种: 
      (1)RemoteMBeanScheduler 
      (2)RemoteScheduler 
      (3)StdScheduler。最常用! 

    • trigger 触发器:用于定义任务调度时间规则。
      Quartz 中主要提供了四种类型的 trigger:
      (1)SimpleTrigger;
      (2)CronTirgger;
      (3)DateIntervalTrigger;
      (4)NthIncludedDayTrigger;

    • job 任务。
      主要有两种类型的 job:
      (1)无状态的(stateless)
      (2)有状态的(stateful)

    对于同一个 trigger 来说,有状态的 job 不能被并行执行,只有上一次触发的任务被执行完之后,才能触发下一次执行。

    1. 线程视图 

      1. 数据存储 
        qrtz_blob_triggers : 以Blob 类型存储的触发器。
        qrtz_calendars:存放日历信息,quartz可配置一个日历来指定一个时间范围。
        qrtz_cron_triggers:存放cron类型的触发器。
        qrtz_fired_triggers:存放已触发的触发器。
        qrtz_job_details:存放一个jobDetail信息。
        qrtz_job_listeners:job监听器。
        qrtz_locks: 存储程序的悲观锁的信息(假如使用了悲观锁)。
        qrtz_paused_trigger_graps:存放暂停掉的触发器。
        qrtz_scheduler_state:调度器状态。
        qrtz_simple_triggers:简单触发器的信息。
        qrtz_trigger_listeners:触发器监听器。
        qrtz_triggers:触发器的基本信息。

    ps: https://github.com/AnnCoding/quartzDemo 持续更新......

  • 相关阅读:
    反正我是猜错,关于javascript包装对象的一个坑
    《编写可维护的javascript》推荐的编码规范之——编程实践
    《编写可维护的javascript》推荐的编码规范之——编程风格
    35行的山寨版jQuery
    Css进度条
    nginx的location和proxy_pass是否带斜杠的区别
    mongodb笔记
    在安装完 docker for windows 之后,hype-v打开,之后再关闭,vmware无法使用,虚拟机报错:传输(vmdb)错误-32:pipe:read failed
    awk笔记备忘
    sed命令笔记备忘
  • 原文地址:https://www.cnblogs.com/cjn123/p/12815624.html
Copyright © 2020-2023  润新知