Quartz.net框架使用

概述:Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等。 Quartz.NET允许开发人员根据时间间隔(或天)来调度作业。它实现了作业和触发器的多对多关系,还能把多个作业与不同的触发器关联。整合了 Quartz.NET的应用程序可以重用来自不同事件的作业,还可以为一个事件组合多个作业

官方学习文档:http://www.quartz-scheduler.net/documentation/index.html

快速搭建Quartz框架:

 

第一步:安装

新建一个QuartzDemo项目后,安装下面的程序包

  • Install-Package Quartz
  • Install-Package Common.Logging.Log4Net1211
  • Install-Package log4net
  • Install-Package Topshelf
  • Install-Package Topshelf.Log4Net
第二步:实现Job
 
 Test.cs 实现IJob,在Execute方法里编写要处理的业务逻辑。
  public sealed class Test : IJob
    {
        private readonly ILog _logger = LogManager.GetLogger(typeof(TestJob));
 
        public void Execute(IJobExecutionContext context)
        {
            _logger.InfoFormat("Job测试");
        }
    }
第三步:Job服务信息及程序入口
namespace Quartz
{
    class Program
    {
        static void Main(string[] args)
        {
            log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config"));
            HostFactory.Run(x =>
            {
                x.UseLog4Net();
 
                x.Service<ServiceRunner>();
 
                x.SetDescription("服务描述");
                x.SetDisplayName("服务显示名称");
                x.SetServiceName("服务的名称");
 
                x.EnablePauseAndContinue();
            });
        }
    }
}
第三步:配置Job运行
  1.quartz.config  -----用于配置服务的采用线程数量、线程的优先级、以及线程的远程监控配置; 
  2.quartz_jobs.xml------用户配置Job的属于的JobGroup信息,配置JobTrigger触发的条件;  
      Trigger 任务触发器分为两种:
          ①.simple 简单任务的触发器,可以调度用于重复执行的任务
          ②.cron复杂任务触发器--使用cron表达式定制任务调度(推荐使用这种类型比较灵活)
  3.log4net.config------用于配置Job日志记录;
 三个文件具体如何配置参考官方Demo
第四步:部署服务
posted @ 2015-10-21 20:23  水蓝色的梦  阅读(385)  评论(0编辑  收藏  举报