频道栏目
IT货架 > > 正文
Quartz.net使用总结
网友分享于:Jun 12, 2018 11:44:31 PM    来源: IT货架   

进来项目中用到了   任务调度  来实现短信发送网关,所以这里分享下 Quartz.net 的使用经验。 任务调度选用了 Quartz.net 来实现,之前用的是C#中自带的window服务安装,这次也打算用Topshel来做window服务,其实感觉差不多。ok,接下来说下  Quartz.net  在开发中的使用:

Quartz.NET简介

作业调度的目标在于按照预先确定的时间和指定的顺序来确保高效的数据处理流程,从而最大限度的使用系统资源。批处理流程是一种在无需最终用户干预的方式下在后台通过顺序方式运行的操作。

     Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp.net应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。

Quartz.NET 是一个开源的作业调度框架,它可以被在小型应用程序甚至是企业级的应用程序。它有如下几个特点:

  • API 操作简单,只要几行简单的代码你就可以在应用程序里面实现自己的作业调度,并实时监视作业执行情况
  • 触发器功能强大,比 Windows 的任务计划提供更细的触发粒度,你可以使用“Cron表达式(后文将介绍)”来实现如:每周星期一到星期五 8:00am,5:00pm(工作时间) 执行某一件任务
  • 良好的可扩展性,它基于接口编程,你可以实现自己的 Schedule 调度器,Job 作业,以及 Trigger 触发器等
  • 作业可以保存在 RAM 中,也可以持久化到数据库,支持多种数据库类型:SqlServer、Oracle、MySql等
  • 集群,这是一个高级应用,可以在多台计算机之间创建负载平衡、容错处理

Quartz.NET使用

首先引用下面的dll

 

前4个是Quartz.NET使用所必须的,Toshelf是用来做window服务所用的

添加QuartzHelp类库

      添加JobDemo.cs,实现IJob接口。

添加 WindowControl 控制台

     添加Service.cs文件,作为任务调度的入口

     在Program.cs文件中,启动任务调度

 添加配置文件  

   新建一个Configs的文件夹,首先添加quartz_jobs.xml(作为 调度任务 的配置文件)

具体的quartz_jobs.xml里面的配置项,可以参考:http://www.cnblogs.com/h20064528/archive/2012/07/17/2595636.html

   然后配置app.config文件

  最后,为日记记录配置quartz_log4net.config文件,当然,你也可以不用独立出来,直接配置在app.config文件中也是可以的

 好了,接下来运行程序,就可以看见任务已经启动了:

 

安装window服务

用了Toshelf后,不需要用InstallUtil.exe来安装服务了,很简单的一句,直接控制台下执行:WindowControl.exe install 就好了。

 

每一次开发都是一次进步和积累,每一次分享都是一次学习和复习的机会,希望大家有更好的东西也能分享出来,一起学习。

 


广告服务联系QQ:1134687142 | 网站地图

版权所有: IT货架- 内容来自互联网,仅供用于技术学习,请遵循相关法律法规. 京ICP备11030978号-1