关于hangfire的使用

Hangfire.AspNetCore                                           --Hangfire的组件的包
Hangfire.MySql.Core  /   Hangfire.Sqlserver        --Hangfire的持久化数据库的包
--权限包分为2种 任选其一 依赖项不同请自行选择
Hangfire.Dashboard.Authorization                       --Hangfire的权限控制包 (依赖项是owin和hangfire.Core) (目前没找到可视化界面的方法)
Hangfire.Dashboard.BasicAuthorization              --Hangfire被人二次封装的包。支持可视化界面的植入。支持core等

hangfire是执行后台任务的利器,具体请看官网介绍:https://www.hangfire.io/

新建一个asp.net core mvc 项目

 

 

引入nuget包 Hangfire.AspNetCore

 

hangfire的任务需要数据库持久化,我们在Startup类中修改ConfigureServices

然后在Configure方法中启用hangfire中间件

现在我们运行一下项目,可以看到,数据库里自动生成了很多表,这些表就是用来持久化任务的

我们打开如下地址,可以看到hangfire的作业控制面板,现在开没有任何作业

 

 在Configure方法中添加一个周期性作业,每分钟执行一次输出

再次启动应用程序

 

 

输出作业已经有了。

再次修改代码,假设现在有2个任务,发送跟接收消息,那么写一个接口IMessage,Message实现该接口

在starup中注册,

然后在Configure方法中使用

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2020-01-06 11:37  心中Where_True循环  阅读(796)  评论(0编辑  收藏  举报