quartz.net的任务调度组件的研究与应用(源码)【字数:8437】
摘 要 对于目前的企业应用来说,任务调度已经成为项目需求中不可缺少的一部分。任务调度也变得尤为复杂,这就要求有强大的调度时间规则来支持。于是,越来越多的开发者选择使用Quartz.net框架来解决调度问题。Quartz.net是一个开源的项目,目的在于建立一个免费为商业用途的作业调度,它可以提供了插件,集群,监听等多种功能;配置和使用简单,方便;具有灵活性,能够满足时间规则比较复杂的调度;具有持久性,调度信息存储在数据库中,防止丢失。此外它还有很多的优点,这里就不一一列举了。 本文中主要介绍了Quartz.net框架的基本特征、构成、如何配置实现、在应用中作业是如何存储,管理的,调度时间是如何设置的等等。同时,还介绍了该如何搭建一个Quartz.net框架,并给出了搭建的基本步骤以及过程中需要注意的事项。在调度框架的基础上,做了一个简单的任务调度应用,并用日志的形式展示了任务调度的过程。
目 录
第一章 绪论 1
1.1 选题依据意义 1
1.2 Quartz.net框架研究的现状 1
1.3 论文结构 2
第二章 Quartz.net框架的介绍 3
2.1 Quartz.net框架的由来 3
2.2 Quartz.net的特征 3
2.3 Quartz.net框架的基本构成 4
2.3.1 核心—Scheduler 4
2.3.2 业务操作—Job ...5
2.3.3 服务执行条件—Trigger 6
2.3.4 执行期事件Listener 7
2.3.5 Cron表达式 7
2.4 Quartz.net框架的配置实现 8
2.5 与Timer的区别 8
第三章 基于Quartz.net框架的系统的实现 9
3.1 系统的设计目标 9
3.2 Quartz.net框架的搭建 9
3.3 Log4net日志组件 12
第四章 系统功能演示 14
4.1 服务启动 14
4.2 调度日志展示 15
4.3 服务卸载 15< *好棒文|www.hbsrm.com +Q: #351916072#
br /> 第五章 总结和展望 17
5.1 总结 17
5.2 未来展望 17
致 谢 18
参考文献 19
绪论
选题依据意义
如今的系统,由于客户的需求不断提高,这就导致了计划任务的不断增加。与此同时,客户对计划任务的要求也在不断提高。如果人们采用传统的处理方式,每个计划任务都对应一个后台service的话,这对于平时的维护和管理的难度会大大增加。而Quartz.net框架可以解决这些问题。
Quartz.net是一款开源的作业调度框架,采用C#编写[3]。它可用于很多应用中,比如winform、asp.net。它可以被用给单个或者多个作业创建调度。开发人员可以用这个框架来为执行单个或者多个作业而创建简单或复杂的任务调度。同时,框架的灵活性、简单性也给开发人员在项目的开发时提供了很大的便利,相关人员只需要修改相关的配置文件、添加相应的作业就可以完成添加。
Quartz.net框架研究的现状
2017年的2月18号,Marko Lahma发布了quartz.net2.5版本,这个版本的发布主要是用来修复一些bug的。比如说:
在NotifyJobListenersComplete中的数据连接丢失之后,作业将被阻塞在阻塞状态;
在Oracle rownum基础上的查询可能会在Oracle SQL调优任务运行后,出现错误;
能够更好地处理DST;
当暂停时没有触发器,RAMJobStore无法恢复;
当指定“/ interval”时,CronExpression未正确检查范围;
从现有地图构建时修复JobDataMap脏标志;
通过RAMJobStore中的作业存储触发器以获得更好的性能;
在虚拟方法中创建WorkerThread;
SqlSelectJobForTrigger不使用主键连接并导致索引扫描;
Marko Lahma在2016年的8月16号发布了最新版本3.0,此版本修复了一些之前就存在的问题:修复了因为存储在本地上的线程而导致AdoJobStore不能使用Scheduler信号;线程的部分状态将被全部的删除掉;即便是使用非串行化RAMJobStore,也需要quartz.serializer.type;还包括一些突破性的变化,比如此版本将自2.x版本以来过时的IStatefulJob(有状态作业)删除等。但这个版本也有它不足的地方,它没有远的支持,缺少文件等等。
论文结构
第一章:绪论
介绍了为什么要选择基于Quartz.net框架的任务调度组件这个课题以及这个框架的研究现状 。
第二章:Quartz.net框架的介绍
详细介绍了Quartz.net框架的由来,这个框架有什么特征,框架大体由哪几部分构成,在应用中使用Quartz.net框架是该如何配置,以及与Timer的区别。
第三章:基于Quartz.net框架的系统的实现
介绍了如何在项目中实现Quartz.net框架的搭建,搭建过程中需要注意的事项,以及在搭建过程中需要用到的组件。
第四章:系统功能演示
基于这个Quartz.net调度框架的应用。
第五章:总结和展望 。
Quartz.net框架的介绍
Quartz.net框架的由来
在如今计算机技术飞速发展的情况下,开发一个项目,往往需要很多的人力、资源。很多时候为了满足客户的需求和市场的需求,一个项目往往会涉及到很多不同的作业。当时为了解决这个问题,人们常用到的一些方法,比如说用windows service方式去解决,但它只适合少量的作业,若一个项目中要运行百个甚至上万个作业的话,windows service就不能满足需求了。所以,在这种情况下人们就更加急切的需要开发一个更为强大,管理更为方便的作业调度框架来适应客户的需求、社会的需求。
目 录
第一章 绪论 1
1.1 选题依据意义 1
1.2 Quartz.net框架研究的现状 1
1.3 论文结构 2
第二章 Quartz.net框架的介绍 3
2.1 Quartz.net框架的由来 3
2.2 Quartz.net的特征 3
2.3 Quartz.net框架的基本构成 4
2.3.1 核心—Scheduler 4
2.3.2 业务操作—Job ...5
2.3.3 服务执行条件—Trigger 6
2.3.4 执行期事件Listener 7
2.3.5 Cron表达式 7
2.4 Quartz.net框架的配置实现 8
2.5 与Timer的区别 8
第三章 基于Quartz.net框架的系统的实现 9
3.1 系统的设计目标 9
3.2 Quartz.net框架的搭建 9
3.3 Log4net日志组件 12
第四章 系统功能演示 14
4.1 服务启动 14
4.2 调度日志展示 15
4.3 服务卸载 15< *好棒文|www.hbsrm.com +Q: #351916072#
br /> 第五章 总结和展望 17
5.1 总结 17
5.2 未来展望 17
致 谢 18
参考文献 19
绪论
选题依据意义
如今的系统,由于客户的需求不断提高,这就导致了计划任务的不断增加。与此同时,客户对计划任务的要求也在不断提高。如果人们采用传统的处理方式,每个计划任务都对应一个后台service的话,这对于平时的维护和管理的难度会大大增加。而Quartz.net框架可以解决这些问题。
Quartz.net是一款开源的作业调度框架,采用C#编写[3]。它可用于很多应用中,比如winform、asp.net。它可以被用给单个或者多个作业创建调度。开发人员可以用这个框架来为执行单个或者多个作业而创建简单或复杂的任务调度。同时,框架的灵活性、简单性也给开发人员在项目的开发时提供了很大的便利,相关人员只需要修改相关的配置文件、添加相应的作业就可以完成添加。
Quartz.net框架研究的现状
2017年的2月18号,Marko Lahma发布了quartz.net2.5版本,这个版本的发布主要是用来修复一些bug的。比如说:
在NotifyJobListenersComplete中的数据连接丢失之后,作业将被阻塞在阻塞状态;
在Oracle rownum基础上的查询可能会在Oracle SQL调优任务运行后,出现错误;
能够更好地处理DST;
当暂停时没有触发器,RAMJobStore无法恢复;
当指定“/ interval”时,CronExpression未正确检查范围;
从现有地图构建时修复JobDataMap脏标志;
通过RAMJobStore中的作业存储触发器以获得更好的性能;
在虚拟方法中创建WorkerThread;
SqlSelectJobForTrigger不使用主键连接并导致索引扫描;
Marko Lahma在2016年的8月16号发布了最新版本3.0,此版本修复了一些之前就存在的问题:修复了因为存储在本地上的线程而导致AdoJobStore不能使用Scheduler信号;线程的部分状态将被全部的删除掉;即便是使用非串行化RAMJobStore,也需要quartz.serializer.type;还包括一些突破性的变化,比如此版本将自2.x版本以来过时的IStatefulJob(有状态作业)删除等。但这个版本也有它不足的地方,它没有远的支持,缺少文件等等。
论文结构
第一章:绪论
介绍了为什么要选择基于Quartz.net框架的任务调度组件这个课题以及这个框架的研究现状 。
第二章:Quartz.net框架的介绍
详细介绍了Quartz.net框架的由来,这个框架有什么特征,框架大体由哪几部分构成,在应用中使用Quartz.net框架是该如何配置,以及与Timer的区别。
第三章:基于Quartz.net框架的系统的实现
介绍了如何在项目中实现Quartz.net框架的搭建,搭建过程中需要注意的事项,以及在搭建过程中需要用到的组件。
第四章:系统功能演示
基于这个Quartz.net调度框架的应用。
第五章:总结和展望 。
Quartz.net框架的介绍
Quartz.net框架的由来
在如今计算机技术飞速发展的情况下,开发一个项目,往往需要很多的人力、资源。很多时候为了满足客户的需求和市场的需求,一个项目往往会涉及到很多不同的作业。当时为了解决这个问题,人们常用到的一些方法,比如说用windows service方式去解决,但它只适合少量的作业,若一个项目中要运行百个甚至上万个作业的话,windows service就不能满足需求了。所以,在这种情况下人们就更加急切的需要开发一个更为强大,管理更为方便的作业调度框架来适应客户的需求、社会的需求。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/458.html