一、Quartz.Net是什么

1.来源

Quartz.Net是一个开源的作业调度框架;

2.下载地址

官网地址:http://www.quartz-scheduler.net/documentation/index.html

源码地址:https://sourceforge.net/projects/quartznet/

二、Quartz.Net能干什么

定时轮询数据库同步,定时邮件通知

三、Quartz.Net中的设计模式

1.Builder模式

所有关键组件都由Builder模式来构建<Builder>。如:JobBuilder,TriggerBuilder

2.Factory模式

最终由Scheduler来进行组合各种组件<Factory>。如SchedulerFactory

3.Component模式

Quartz.Net项目中大量使用组件模式,插件式设计,可插拔,耦合性低,易扩展,开发者可自行定义自己的Job,Trigger等组件

4.链式编程

与jQuery的写法相似

四、几个重要的类型

1.SchedulerFactory(调度程序工厂)

(1)StdSchedulerFactory

Quartz.Net默认的SchedulerFactory

(2)DirectSchedulerFactory

是对SchedulerFactory的直接实现,通过它可以直接构建Scheduler,ThreadPool

2.IJobExecutionContext(Job上下文)

Job上下文,保存着Trigger,JobDetail等信息

3.Scheduler(调度器)

(1)StdScheduler

Quartz.Net默认的Scheduler

(2)RemoteScheduler

带有RMI功能的Scheduler

4.Job(任务对象)

(1)JobDetail

它是实现轮询的一个回调类,可将参数封装成JobDataMap对象,Quartz.Net将任务的作业状态保存在JobDeta中

(2)JobDataMap

JobDataMap用来报错由JobDetail传递过来的任务实例对象

5.Trigger

(1)SimpleTrigger

普通的Trigger,对应调度器SimpleScheduleBuilder

(2)CronTrigger

带Cron Like表达式的Trigger,对应调度器CronScheduleBuilder

(3)CalendarIntervalTrigger

带日期触发的Trigger,对应调度器CalendarIntervalScheduleBuilder

(4)DailyTimeIntervalTrigger

按天触发的Trigger,对应调度器DailyTimeIntervalScheduleBuilder

6.ThreadPool

为Quartz运行任务时提供了一些线程

(1)SimpleThreadPool

一个Quartz默认实现的简单线程池,它能够应答大部分常用场景

五、参考文章

http://blog.csdn.net/chenweitang123/article/details/37777399

Quartz.Net学习笔记(2)-简介的更多相关文章

  1. Linux内核学习笔记-1.简介和入门

    原创文章,转载请注明:Linux内核学习笔记-1.简介和入门 By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...

  2. React学习笔记 - JSX简介

    React Learn Note 2 React学习笔记(二) 标签(空格分隔): React JavaScript 一.JSX简介 像const element = <h1>Hello ...

  3. CUBRID学习笔记 1 简介 cubrid教程

    CUBRID 是一个全面开源,且完全免费的关系数据库管理系统.CUBRID为高效执行Web应用进行了高度优化,特别是需要处理大数据量和高并发请求的复杂商务服务.通过提供独特的最优化特性,CUBRID可 ...

  4. Quartz.NET学习笔记(一) 简介

    Quartz.NET是一款开源的任务调度框架,他是由Java中的任务调度框架Quartz移植而来的.官方网站https://www.quartz-scheduler.net/. Quartz.Net的 ...

  5. shiro学习笔记_0100_shiro简介

    前言:第一次知道shiro是2016年夏天,做项目时候我要写springmvc的拦截器,申哥看到后,说这个不安全,就给我捣鼓了shiro,我就看了下,从此认识了shiro.此笔记是根据网上的视频教程记 ...

  6. Mybatis-Plus 实战完整学习笔记(一)------简介

    第一章    简介      1. 什么是MybatisPlus                MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只 ...

  7. ElasticSearch学习笔记-01 简介、安装、配置与核心概念

    一.简介 ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进 ...

  8. python学习笔记1--python简介和第一行代码编写

    一.什么是python? python是一种面向对象,解释型语言,它语法简介,容易学习.本节博客就来说说本人学习python的心得体会. 二.python环境安装 目前python版本有python2 ...

  9. symfony学习笔记1—简介

    1.symfony快速入门还是先看代码结构把,这个是拿到代码的第一印象,app/:整个应用的配置,模版,translations,这个可能是多语言文件什么,src/:项目php文件,vendor/:第 ...

随机推荐

  1. 一个1x1px大小Data/Base64数据的gif透明图片

    <img src="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNg ...

  2. 搬砖--杭电校赛(dfs)

    搬砖 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Total Submissi ...

  3. pycharm下运行和调试scrapy项目

    1. 新建项目 默认在本地已经新建了一个scrapy爬虫项目 2. 打开项目 点击open à 选择刚刚那个本地的scrapy项目meijutt100 3. 项目结构 各个py文件的作用不作介绍,不懂 ...

  4. operamasks—omGrid/omBorderLayout的混合使用

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.aspx.cs&q ...

  5. HTTPS 是如何保证安全的?

    每当我们讨论到信息安全的时候,我们最长接触到的信息加密传输的方式莫过于 HTTPS 了,当我们浏览器地址栏闪现出绿色时,就代表着这个网站支持 HTTPS 的加密信息传输方式,并且你与它的连接确实被加密 ...

  6. #!/usr/bin/env 脚本解释程序的作用

    the Zimbu programming language http://www.zimbu.org/getting-started -------------------------------- ...

  7. 戴尔iDRAC服务器远程控制设置

    对于远程的服务器,我们不能经常性的去机房维护,所以远程控制对于服务器来说就显得至关重要.那么你是用什么方式对服务器进行远程控制呢?远程桌面?还是KVM切换器?NO,你OUT了!如果你用的是戴尔的服务器 ...

  8. php生成二维码2

    <?php include "phpqrcode.php"; $value = "http://huizhongda.taobao.com/"; $err ...

  9. Android之——jni通用工具方法

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47002207 1.将java字符串转化为c++字符串 /** *工具方法 *将ja ...

  10. C#调用Oracle存储过程的方法

    C#调用Oracle存储过程的方法 准备: 环境:pl/sql+oracle9i+vs2008 创建表test: create table TEST(  ID      NUMBER,//编号  NA ...