C#/.NET/.NET Core应用程序编程中实现定时任务调度的方法或者组件


当前第2页 返回上一页

Coravel

Coravel是一个零配置的基于.NET标准库的微组件,它包含了定时任务调度,缓存,队列,事件广播等等功能。

官方地址: https://docs.coravel.net/Scheduler/

· 简单,优雅,流畅的代码书写方式创建定时任务

· 基于.NET标准库,跨平台

· 丰富的调度接口

· 支持Cron表达式

· 支持全局错误处理

Quartz.NET

Quartz.NET是一个开源的定时作业调度项目,旨在创建一个免费商业使用的作业调度器,同时具有“企业级”的特性。

Quartz.NET目前的版本是支持跨平台的,即支持.NET和.NET Core的应用程序。

官方地址: http://www.quartz-scheduler.net/

特性

· API 操作简单,只要几行简单的代码你就可以在应用程序里面实现自己的作业调度,并实时监视作业执行情况

· 触发器功能强大,比 Windows 的任务计划提供更细的触发粒度

· 良好的可扩展性,它基于接口编程,你可以实现自己的 Schedule 调度器,Job 作业,以及 Trigger 触发器等

· 持久化,作业可以保存在内存中,也可以持久化到数据库,支持多种数据库类型:SqlServer、Oracle、MySql等

· 分布式和集群,这是一个高级应用,可以在多台计算机之间创建负载平衡、容错处理

· 支持Cron表达式

· 支持以配置文件的方式定制作业调度

Hangfire

Hangfire是一个支持.NET和.NET Core应用程序的跨平台的后台作业处理框架,使用Hangfire时不再需要Windows服务或者单独的进程。

Hangfire可以在ASP.NET/ASP.NET Core等应用程序中以简单的方式实现触发,延迟以及定时执行等任务。

同时还支持CPU和I/O密集型、长时间运行和短时间运行的作业而不需要设置Windows服务或者其他的任务调度。

Hangfire支持多种数据存储方式,如:Redis, SQL Server, SQL Azure和MSMQ等。

官方地址: https://www.hangfire.io

特性

· 安装简单,快速入门:没有Windows服务,没有Windows调度程序,不需要单独的应用程序

· 可持久化:后台作业是在存储中持久存储介质中的,如:SQL Server、Redis、PostgreSQL、MongoDB等

· 作业数据透明:内置的web界面允许您查看后台作业的整体情况,以及观察每个后台作业的状态

· 可靠:后台作业一旦无异常地被创建,Hangfire负责至少处理一次这个作业

· 分布式:后台方法调用及其参数是序列化的,因此可以克服进程边界问题

· 可扩展:作业过滤器允许您以类似于ASP.NET MVC操作过滤器的方式向后台处理添加自定义功能

· 高效:尽管默认安装使用SQL Server和轮询来获取作业,但可以利用MSMQ或Redis扩展来将处理延迟降低到最低

· 自维护:你不需要手动维护和清理存储空间,Hangfire会尽可能地自动清理旧的数据

· 开源免费:Hangfire是开源的框架并且对商用免费,只需遵循LGPLv3许可即可

返回前面的内容

相关阅读 >>

c# 定时器timer的实例介绍

.net下如何使用quartz.net的代码图文教程

c#中关于timer定时器重入问题的解决方法

c#/.net/.net core应用程序编程中实现定时任务调度的方法或者组件

详解c#中timer的使用和解决重入问题

更多相关阅读请进入《定时任务》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...