项目现状:

有若干定时程序需要自启动运行,为了简便程序部署等问题,采取这种办法把定时程序集中管理到webapi中跟随api发布

代码架构介绍:

新建一个类库,类库引用Quartz(Quartz.2.3.2),每个需要统一管理的程序新建一个文件,其中包括处理程序类和接口

类库中做一个接口静态类,便于api的Application_Start方法调用

其中JobScheduler类的静态方法如下:

public static void Start()
        {                   
            StdSchedulerFactory factory = new StdSchedulerFactory();
            IScheduler scheduler = factory.GetScheduler();

/*-------------计划任务代码实现------------------*/
            //创建任务1
            IJobDetail job = JobBuilder.Create<CityData.CityDataCaiji>().Build();
            //创建触发器1
            ITrigger trigger = TriggerBuilder.Create().WithIdentity("TimeTrigger", "TimeGroup")
                .WithSimpleSchedule(t => t
                .WithIntervalInMinutes(5)
                .RepeatForever())
                .Build();

//创建任务2
            IJobDetail job1 = JobBuilder.Create<DataBaseBackup.DatabaseBackup>().Build();
            //创建触发器2
            ITrigger trigger1 = TriggerBuilder.Create().WithIdentity("TimeTrigger1", "TimeGroup1")
                .WithSimpleSchedule(t => t
                .WithIntervalInMinutes(10)
                .RepeatForever())
                .Build();
            //添加任务及触发器至调度器中
            scheduler.ScheduleJob(job, trigger);
            scheduler.ScheduleJob(job1, trigger1);
            scheduler.Start();

}

每个定时程序分别差功能键自己的任务和触发器,由scheduler统一调度。

转载于:https://www.cnblogs.com/pangzili/p/8748933.html

webapi+Quartz.NET解决若干定时程序同时运行的问题相关推荐

  1. Quartz+SpringMVC实现web定时管理任务

    代码地址如下: http://www.demodashi.com/demo/13978.html 使用背景 相信大家在工作过程中,肯定会遇到很多任务定时执行,修改定时任务的时间,执行一次定时任务等等. ...

  2. 单片机怎么做定时器矩阵,彻底解决各种定时问题?

    大家好,我是无际. 定时功能非常常用,可以说是刚需,也可以说是很多人的痛点. 做LED闪烁效果要用定时.按键扫描要定时.数码管扫描要定时.滤波要定时等等. 曾经,我在产品开发的时候也被各种定时需求搞得 ...

  3. Quartz.Net实现作业定时调度详解

    Quartz.Net实现作业定时调度详解 原文:Quartz.Net实现作业定时调度详解 1.Quartz.NET介绍 Quartz.NET是一个强大.开源.轻量的作业调度框架,你能够用它来为执行一个 ...

  4. 控制台基于Quartz.Net组件实现定时任务调度(一)

    前言: 你曾经需要应用执行一个任务吗?比如现在有一个需求,需要每天在零点定时执行一些操作,那应该怎样操作呢? 这个时候,如果你和你的团队是用.NET编程的话,可以考虑使用Quartz.NET调度器.允 ...

  5. 解决“由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题”...

    [VS2005]解决"由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题" 今天在准备发布用VS2005写的那个程序时,拷贝到我同事机器上,双击突然出现 ...

  6. java 打开指定文件,java解决指定应用程序打开指定文件

    java解决指定应用程序打开指定文件 //打开工具的路径及名字 String toolsPath = "D:/office/Office12/WINWORD.EXE"; //被打开 ...

  7. windows 2003服务器不断向外发包解决方法 php程序

    服务器不断向外发包解决方法 php程序    iis重启后,网站正常,过一段时间,服务器的上传流量占满 在c:\windows\php.ini里设置:  disable_functions =gzin ...

  8. 解决“由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题”(转贴)...

    [VS2005]解决"由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题" 今天在准备发布用VS2005写的那个程序时,拷贝到我同事机器上,双击突然出现 ...

  9. 解决微信小程序配置https不成功问题

    解决微信小程序配置https不成功问题 参考文章: (1)解决微信小程序配置https不成功问题 (2)https://www.cnblogs.com/ant-jmf17/p/8056989.html ...

最新文章

  1. 爬虫之xpath语法-常用节点选择语法
  2. Spring Cloud Alibaba 生产实践:Sentinel 进阶应用场景
  3. 苗旺:因果推断,观察性研究和 2021 年诺贝尔经济学奖 | 青源 Talk 第 8 期
  4. 判断数组中有该元素?
  5. LeetCode35.搜索插入位置 JavaScript
  6. Javascript面向对象编程(二) 构造函数的继承
  7. Nova 组件详解 - 每天5分钟玩转 OpenStack(26)
  8. Saltstack 报错 python-crypto randomPool_DeprecationWarning:
  9. 特斯拉不顾疫情开工,马斯克放话:若要逮捕,冲我一个人来!
  10. Kubernetes证书相关(CFSSL)
  11. 【SQL Server】用SQL命令建立数据库和表
  12. idc机房运维巡检_IDC机房运维心得
  13. 叮,你有一份光线追踪技术合集待查收 | IMG2020
  14. 如何在中国大陆三大运营商申请公网IPV4地址
  15. 如何在线免费将MP4转换成MP3格式音乐
  16. 生成3D多棱柱的方法(3D立体图片)
  17. 以太网交换机和路由器的区别(转载)
  18. x99芯片组 服务器,X99芯片组详情:不兼容的LGA2011-3插槽,6个USB 3.0接口
  19. [Usaco2010 Dec]Treasure Chest 藏宝箱
  20. win 10 PHP开发环境配置

热门文章

  1. js等待当前线程内ajax完成,理解javascript定时器中的单线程
  2. hook java android_Android Hook Java的的一個改進版本
  3. 钢材规格解读的软件_万维软件ERP五金建材行业解决方案
  4. RocketMQ带你快速入门
  5. linux vlc流媒体服务器,vlc media server rtsp 流媒体服务器搭建成功经验分享
  6. 收集17句经典程序员口头禅
  7. Docker Kafka 单机版安装
  8. React 入门手册
  9. Android布局大全
  10. 资本冬天已至,开发者却可以着眼未来