博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Quartz.net 的 FAQ
阅读量:6232 次
发布时间:2019-06-21

本文共 1423 字,大约阅读时间需要 4 分钟。

Quartz 是什么?

Quartz 是作业调度系统,可以集成进其他软件系统。这里【作业调度程序】一词是指,在预定义时间执行(或通知)其他组件的系统。

Quartz 有什么优点?

  • 灵活,有多种使用方式,可混合使用
  • 轻量,只需很少的配置
  • 容错性好
  • 具有持久化功能,程序重启时,可记住已计划的任务

Quartz的主要接口?

Quartz 以 dll 形式分发,主要接口有

  • Schedular 接口:它提供的功能有:调度/取消调度作业,开始,停止,暂停。
  • Job接口:用于自定义执行逻辑。
  • TriggerListener 或 JobListener 接口:用于接收通知。

为什么不使用 System.Timers.Timer?

  • Timer没有持久化机制
  • Timer的调度功能没有弹性,仅能定时触发
  • Timer不能利用线程池,每个Timer一个线程
  • Timer没有管理功能,需要自己组织任务

Quartz 的性能如何?

JobStore 影响性能:基于ADO.NET的JobStore性能不如基于RAM的JobStore,采用AdoJobStore时,大部分时间都花在数据库交互上,RAMJobStore比AdoJobStore快1000倍以上,但存储的作业和触发器数量没有AdoJobStore多。

侦听器影响性能:使用大量侦听器会降低quartz性能,例如,TriggerListener, JobListener和 SchedulerListener,一些插件实际上也是侦听器,例如历史插件。花在侦听器的时间没有用于实际作业。优先使用局部侦听器,而非全局侦听器。在侦听器中尽量不要执行昂贵操作。

Quartz能同时执行多少任务?

quartz能同时执行的作业数受线程池大小影响,例如,线程池中只有5个线程池时,最多可以执行5个任务。

如何控制作业对象的实例化?

参考 Quartz.Spi.IJobFactory 接口和 Quartz.IScheduler.JobFactory 属性。

如何使孤儿作业不被删除?

孤儿作业是指没有触发器引用的作业。将 JobDetail.Durable 属性设为true,可使quartz不删除孤儿作业。

如何禁止并发作业?

使用 DisallowConcurrentExecutionAttribute 可禁止作业并发执行。

如何停止正在执行的作业?

参考IJobExecutionContext 的 CancellationToken.IsCancellationRequested 属性。

如果组织链式作业?

  • 方法1,使用侦听器(例如 TriggerListener, JobListener 或 SchedulerListener) ,在完成时发出通知,开始下一个作业。
  • 方法2,在 JobDataMap 中指定下一个要触发的作业名,在作业完成时触发。

触发器为什么不触发?

  • 最常见原因是没有调用Scheduler.Start()方法
  • 其次是触发器或触发器组被暂停

IIS 中如何保持调度不停止?

IIS 会回收应用程序池,调度程序将停止。如果使用的IIS8,可配置IIS始终运行:

  • 网站:【预加载已启用】设为【True】
  • 应用程序池:【启动模式】设为【AlwaysRunning】

 

转载于:https://www.cnblogs.com/dongbeifeng/p/quartz-net-faq.html

你可能感兴趣的文章
[erlang] mnesia
查看>>
php编码
查看>>
Java使用Socket传输文件遇到的问题(转)
查看>>
MYSQL-用户权限的验证过程(转)
查看>>
快递配送最后一公里的痛:利益失衡后开始崩塌
查看>>
深入理解Tomcat系列之一:系统架构(转)
查看>>
ArcMap打开越来越慢
查看>>
nagios客户端未启动报错
查看>>
Redux
查看>>
基于API调用的恶意软件分析技术
查看>>
顺序容器
查看>>
NodeJs——进程管理(一)
查看>>
微信支付开发(7) H5支付
查看>>
ffmpeg解码RTSP/TCP视频流H.264(QT界面显示视频画面)
查看>>
深度学习入门:投身深度学习你需要哪些准备?
查看>>
南京大学周志华教授当选欧洲科学院外籍院士
查看>>
医疗数据难获得,人工智能医疗发展遭遇瓶颈期
查看>>
数据集成服务破解SaaS集成难题
查看>>
【云栖大会】阿里云和红帽达成合作为百万级客户提供更多企业级解决方案
查看>>
GNU Chess
查看>>