日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

hangfire mysql_.NET之Hangfire快速入门和使用

發布時間:2024/1/8 数据库 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hangfire mysql_.NET之Hangfire快速入门和使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章正文:

前言:

定時任務調度問題,是一個老生常談的問題。網上有許多定時任務調度的解決方案,對于我而言很早以前主要是使用Window計劃和Window服務來做任務定時執行,然后就開始使用定時任務調度框架Quartz.Net。但是卻一直沒有上手過Hangfire這個自帶后臺任務調度面板,可以在后臺手動執行任務的神奇的任務調度框架。前段時間終于開始對他下手了,通過在網上查閱了一些資料和查看了Hangfire在Github中的demo,終于在我自己的項目中用上了Hangfire。在該篇文章中主要簡單介紹一下什么是Hangfire,Hangfire的基本特征與優點和分別使用MySQL,MS SQL Server作為存儲使用。

一、Hangfire是什么:

Hangfire是一個開源的.NET任務調度框架,提供了內置集成化的控制臺,可以直觀明了的查看作業調度情況,并且Hangfire不需要依賴于單獨的應用程序執行(如:windows服務,window計劃)。并且支持持久性存儲。

二、Hangfire使用條件:

Hangfire與特定的.NET應用程序類型無關。您可以在ASP.NET Web應用程序,非ASP.NET Web應用程序,控制臺應用程序或Windows服務中使用它。以下是要求:

1.NET Framework 4.5

2.永久存儲(Hangfire將后臺作業和其他與處理有關的信息保留在永久性存儲器中,所以需要存儲庫來存儲如:MS SQL Server,Redis,MySQL,PostgreSql等)

3.Newtonsoft.Json庫≥5.0.1

三、Hangfire的基本特征與優點:

通過官網中的一張圖片便可知道它是一個多么優秀的任務調度框架,如下圖所示:

四、Hangfire安裝和使用:

在NuGet上有關于Hangfire的 一系列軟件包:

詳情地址:?https://www.nuget.org/packages?q=Hangfire

通過在程序包管理控制臺中輸入安裝命令安裝Hangfire所需NuGet包:

使用MS SQL Server作為存儲時我們需要安裝的NuGet:

在ASP.NET 應用程序下使用Hangfire安裝:

1 ? Install-Package Hangfire

在控制臺應用程序或者window server中處理作業:

1

2 ? Install-Package Hangfire.Core

Install-Package Hangfire.SqlServer

注意,在控制臺應用程序或者window server中不推薦直接安裝:Install-Package Hangfire ,因為它只是一個快速啟動軟件包,并包含您可能不需要的依賴項(例如,Microsoft.Owin.Host.SystemWeb等無關依賴項)。

使用MySQL作為存儲時我們需要安裝的NuGet:

在ASP.NET 應用程序下使用Hangfire安裝:

1 ? Install-Package Hangfire.Core

我們還需要安裝一個MySql存儲(Hangfire.MySqlStorage)的拓展,注意因為Hangfire本身是不支持MySQL存儲的,這是名為:Arnoldas Gudas作者拓展的:

Nuget地址:https://www.nuget.org/packages/Hangfire.MySqlStorage/

安裝命令:

注意:因為我的項目是.NET Framework,Version=v4.5.1版本的,所以只能安裝1.0.7版本的,大家看需求而定

1 ? Install-Package Hangfire.MySqlStorage -Version 1.0.7

當我們要使用(宿主)IIS托管ASP.NET應用程序時,我們還需要安裝:

1 ? Install-Package Microsoft.Owin.Host.SystemWeb -Version 4.0.1

添加和配置OWIN Startup.cs,及其連接對應的存儲數據庫:

添加OWIN Startup.cs

這里是當你的項目中不存在Startup.cs時才需要執行添加的操作!

什么是OWIN Startup.cs:

簡單概述:是.NET 平臺開放的web接口,Startup則是.Net與web通訊管道,起到轉發,溝通的作用。

詳情介紹:https://www.cnblogs.com/wj033/p/6065145.html

在Startup.cs中連接需要使用的存儲庫:

1

2

3

4

5

6

7

8

9

10

11

12

13 ? public void Configuration(IAppBuilder app)

{

//運用SqlServer存儲,對應web.config中的connectionStrings中的name

GlobalConfiguration.Configuration.UseSqlServerStorage("sqlserver_connection");

//注意,當你使用的是MySql作為存儲時,需要如下配置

//運用MySql存儲,對應web.config中的connectionStrings中的name

GlobalConfiguration.Configuration.UseStorage(new MySqlStorage("mysql_connection"));

app.UseHangfireDashboard();//配置后臺儀表盤

app.UseHangfireServer();//開始使用Hangfire服務

}

Web.config數據庫連接配置:

1.MS SQL Server中:

總結

以上是生活随笔為你收集整理的hangfire mysql_.NET之Hangfire快速入门和使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。