Quartz.Net学习笔记(2)-简介
一、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)-简介的更多相关文章
- Linux内核学习笔记-1.简介和入门
原创文章,转载请注明:Linux内核学习笔记-1.简介和入门 By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...
- React学习笔记 - JSX简介
React Learn Note 2 React学习笔记(二) 标签(空格分隔): React JavaScript 一.JSX简介 像const element = <h1>Hello ...
- CUBRID学习笔记 1 简介 cubrid教程
CUBRID 是一个全面开源,且完全免费的关系数据库管理系统.CUBRID为高效执行Web应用进行了高度优化,特别是需要处理大数据量和高并发请求的复杂商务服务.通过提供独特的最优化特性,CUBRID可 ...
- Quartz.NET学习笔记(一) 简介
Quartz.NET是一款开源的任务调度框架,他是由Java中的任务调度框架Quartz移植而来的.官方网站https://www.quartz-scheduler.net/. Quartz.Net的 ...
- shiro学习笔记_0100_shiro简介
前言:第一次知道shiro是2016年夏天,做项目时候我要写springmvc的拦截器,申哥看到后,说这个不安全,就给我捣鼓了shiro,我就看了下,从此认识了shiro.此笔记是根据网上的视频教程记 ...
- Mybatis-Plus 实战完整学习笔记(一)------简介
第一章 简介 1. 什么是MybatisPlus MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只 ...
- ElasticSearch学习笔记-01 简介、安装、配置与核心概念
一.简介 ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进 ...
- python学习笔记1--python简介和第一行代码编写
一.什么是python? python是一种面向对象,解释型语言,它语法简介,容易学习.本节博客就来说说本人学习python的心得体会. 二.python环境安装 目前python版本有python2 ...
- symfony学习笔记1—简介
1.symfony快速入门还是先看代码结构把,这个是拿到代码的第一印象,app/:整个应用的配置,模版,translations,这个可能是多语言文件什么,src/:项目php文件,vendor/:第 ...
随机推荐
- [bzoj2561]最小生成树_网络流_最小割_最小生成树
最小生成树 bzoj-2561 题目大意:题目链接. 注释:略. 想法: 我们发现: 如果一条权值为$L$的边想加入到最小生成树上的话,需要满足一下条件. 就是求出原图的最小生成树之后,这个边当做非树 ...
- Bad Luck Island-CodeForce(dp)
链接:http://codeforces.com/problemset/problem/540/D 题目大意: 这个岛上有三种生物 r石头 s剪刀 p布 求最后只剩一种生物的概率 用dp[i][ ...
- School Marks-CodeForces
B. School Marks time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- 如何使用TFTP客户端工具修复路由器固件
如何使用TFTP客户端工具修复路由器固件 编号:12083 来自:NetGear 更新日期:2013-10-14 访问数量:24650 NETGEAR无线路由器中, ...
- android的ListView点击item使item展开的做法
直接上代码把.主要是又一次给item measure高度,直接上代码把 import java.util.ArrayList; import android.app.Activity; import ...
- HDU - 3584 Cube (三维树状数组 + 区间改动 + 单点求值)
HDU - 3584 Cube Time Limit: 1000MS Memory Limit: 65536KB 64bit IO Format: %I64d & %I64u Subm ...
- 华为OJ2288-合唱队(最长递增子序列)
一.题目描述 描述: N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学不交换位置就能排成合唱队形. 合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1, 2, -, ...
- io口的作用
I/O接口的作用 主机与外界交换信息称为输入/输出(I/O).主机与外界的信息交换是通过输入/输出设备进行的.一般的输入/输出设备都是机械的或机电相结合的产物,比方常规的外设有键盘.显示器.打 ...
- 将JSON对象转换成IList,好用linq
JObject JToken JProperty IList<> 搞得头都大了,记而备忘: JObject json = ..... JToken[] jps = json["r ...
- beego2---入门
package main //beego既可以建立web应用也可以建立api应用 //beego是一个gohttp服务器的高层封装, import ( _ "beego1/routers&q ...