zoukankan      html  css  js  c++  java
  • Quartz.Net系列(二):介绍、简单使用、对比Windows计划任务

    1.介绍

    Quartz是功能强大的开源作业调度库,几乎可以集成到任何Java应用程序中-从最小的独立应用程序到最大的电子商务系统。Quartz可用于创建简单或复杂的计划,以执行数以万计,数以万计的工作。任务定义为标准Java组件的作业,它们实际上可以执行您可以对其执行的任何编程操作。Quartz Scheduler包含许多企业级功能,例如对JTA事务和集群的支持。

    Quartz是免费使用的,并根据Apache 2.0许可获得许可。

    Java网址:http://www.quartz-scheduler.org/

    .NET网址:https://www.quartz-scheduler.net/

    2.简单使用

    nuget => Install-Package Quartz

        class Program
        {
           async static Task Main(string[] args)
            {
    
                IScheduler scheduler =await StdSchedulerFactory.GetDefaultScheduler();
    
                await scheduler.Start();
    
                var job = JobBuilder.CreateForAsync<FirstJob>().Build();
    
                //trigger  WithIntervalInSeconds(1)间隔1m  RepeatForever重复
                var trigger = TriggerBuilder.Create().WithSimpleSchedule(x => x.WithIntervalInSeconds(1).RepeatForever()).Build();
    
                await scheduler.ScheduleJob(job, trigger);
    
                Console.Read();           
            }
        }
        public class FirstJob : IJob
        {
            public async Task Execute(IJobExecutionContext context)
            {
                await Task.Run(() =>
                 {
                     Console.WriteLine("Hello World !");
                 });
            }
        }

     3.对比Windows计划任务和Quartz的区别

     1.持久化数据库,SqlLite、MongoDB、Redis、SqlServer、MySql等  Windows计划任务做不到

    2.集群支持,双机热备  Windows计划任务做不到

    3.Trigger的时间灵活控制,Windows计划任务可以做到

    4.可视化的管理界面 Windows Scheduler采用CS模式 Quartz采用Web模式

  • 相关阅读:
    线段树再练习
    SCOI 2014 省选总结
    网络流拓展——最小费用最大流
    【集合!】 20140416 && 20140417集训 总结
    Codeforces Round #215 (Div. 1)
    CDQ分治题目小结
    Codeforces Round #232 (Div. 1)
    Codeforces Round #264 (Div. 2)
    Uva 12361 File Retrieval 后缀数组+并查集
    FFT初步学习小结
  • 原文地址:https://www.cnblogs.com/vic-tory/p/13129551.html
Copyright © 2011-2022 走看看