Hangfire这个.NET任务调度框架,究竟有何独特之处,使其在任务调度领域独树一帜?
- 内容介绍
- 文章标签
- 相关推荐
本文共计820个文字,预计阅读时间需要4分钟。
任务调度是项目中常见的功能,实现本身并不难,但一个好用的轮子仍能显著提升开发效率。在 .NET 环境中,较为知名的调度框架是 Hang。
任务调度是我们项目中常见的功能,虽然任务调度的功能实现本身并不难,但一个好用的轮子还是可以给我们的开发的效率提升不少的。
在.net环境中,较为有名的任务调度框架是HangFire与Quartz.NET,本文这里主要介绍Hangfire,相比Quartz.NET来说,它提供了更加友好的页面,使用起来更加方便。Hangfire的优点网上有不少文章介绍的,这里简单的列举一下:
- 支持各种常见的任务类型
- 持久化保存任务、队列、统计信息
- 重试机制
- 多语言支持
- 支持任务取消
- 支持按指定Job Queue处理任务
- 服务器端工作线程可控,即job执行并发数控制
- 分布式部署,支持高可用
- 良好的扩展性,如支持IOC、Hangfire Dashboard授权控制、Asp.net Core、持久化存储等
简单使用:
这里就简单的演示.net core下基本的用法。首先建立一个.net core 的web项目,如果没有别的需求使用空项目模板也可以。
1. 添加程序包:
Install-Package Hangfire
2.配置数据库:
Hangfire默认支持sqlserver和redis,也可以通过第三方扩展支持sqlite等数据库。这里我选择的是常用的sqlserver。
本文共计820个文字,预计阅读时间需要4分钟。
任务调度是项目中常见的功能,实现本身并不难,但一个好用的轮子仍能显著提升开发效率。在 .NET 环境中,较为知名的调度框架是 Hang。
任务调度是我们项目中常见的功能,虽然任务调度的功能实现本身并不难,但一个好用的轮子还是可以给我们的开发的效率提升不少的。
在.net环境中,较为有名的任务调度框架是HangFire与Quartz.NET,本文这里主要介绍Hangfire,相比Quartz.NET来说,它提供了更加友好的页面,使用起来更加方便。Hangfire的优点网上有不少文章介绍的,这里简单的列举一下:
- 支持各种常见的任务类型
- 持久化保存任务、队列、统计信息
- 重试机制
- 多语言支持
- 支持任务取消
- 支持按指定Job Queue处理任务
- 服务器端工作线程可控,即job执行并发数控制
- 分布式部署,支持高可用
- 良好的扩展性,如支持IOC、Hangfire Dashboard授权控制、Asp.net Core、持久化存储等
简单使用:
这里就简单的演示.net core下基本的用法。首先建立一个.net core 的web项目,如果没有别的需求使用空项目模板也可以。
1. 添加程序包:
Install-Package Hangfire
2.配置数据库:
Hangfire默认支持sqlserver和redis,也可以通过第三方扩展支持sqlite等数据库。这里我选择的是常用的sqlserver。

