背景很多时候,项目需要在不同时刻,执行一个或很多个不同的作业。 Windows执行计划这时并不能很好的满足需求了,迫切需要一个更为强大,方便管理,集群部署的作业调度框架。 介绍Quartz一个开源的作业调度框架,OpenSymphony的开源项目。Quartz.Net 是Quartz的C#移植版本。 它一些很好的特性: 1:支持集群,作业分组,作业远程管理。 2:自定义精细的时间触发器,使用简单,作业和触发分离。 3:数据库支持,可以寄宿Windows服务,WebSite,winform等。 实战Quartz框架的一些基础概念解释: Scheduler 作业调度器。 IJob 作业接口,继承并实现Execute, 编写执行的具体作业逻辑。 JobBuilder 根据设置,生成一个详细作业信息(JobDetail)。 TriggerBuilder 根据规则,生产对应的Trigger Nuget安装 PM> Install-Package Quartz 下面是简单使用例子,附带详细的注释:
声明要执行的作业,HelloJob:
声明要执行的作业,DumbJob:
其WithCronSchedule("") 拥有强大的Cron时间表达式,正常情况下WithSimpleSchedule(x) 已经满足大部分对日期设置的要求了。 Quartz.Net官方2.X教程 http://www./documentation/quartz-2.x/tutorial/index.html Quartz.Net开源地址 https://github.com/quartznet/quartznet |
|
来自: ThinkTank_引擎 > 《Web 定时任务》