C#/.NET/.NET Core定时任务调度的方法或者组件有哪些--Timer,FluentScheduler还是... (2)

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许可即可

结束语

本文旨在为大家收集整理.NET/.NET Core中常用的定时任务框架和组件,希望对你有帮助。

如果你还有其他的或者更好的框架/组件,欢迎留言反馈。

码友网:一个专注.NET/.NET Core开发的编程爱好者社区

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwywdd.html