Hangfire項目使用


基本介紹:

hangfire 主要用於根據設置時間來執行任務,間隔幾分鍾執行一次,每天幾點鍾執行一次,如此執行任務。

方法:

backgroundjob.enqueue(()=>"要執行的內容");

//這是基於隊列任務執行,把要執行的內容添加到隊列中,分出一條子線程,執行任務時是不同步的。

 

backgroundjob.Schedule(()=>"要執行的內容",TimeSpan.FromSeconds(1))

//這是延遲任務執行,TimeSpan.FromSeconds(1)參數是表示時間,表示未來多少時間后執行任務

 

Recurring.AddorUpdate(()=>"要執行的內容","*/5 1-24 * * *");

//這是循環任務執行,"*/5 1-24 * * *"是CronExpression表達式,表示在1-24小時范圍內每5分鍾執行任務

http://abunchofutils.com/u/computing/cron-format-helper/(設置CronExpression表達式)

 

 

一.安裝hangfire

環境:VS2015,SQL Server

1.VS2015中上方工具欄中右擊Tools,找到“NuGet Package Manager”,右擊右側“Package Manager Console”進入以下界面:

 

2.安裝Hangfire

在PM>處:

PM> Install - Package Hangfire ,如下圖:

 

繼續安裝:Install-Package  Hangfire.SqlServer (SQL數據庫)

Install-Package Microsoft.Owin.Host.SystemWeb

Install-Package MiniProfiler (job詳細分析)

 

 

二.基本設置

在Add New Item 中找到OWIN Startup class 添加,(MVC 中添加OWIN Startup class ,Web中可以添加Global文件中)

設置數據庫連接:app.UseHangfire(config=>

{

config.UseSqlServerStorage('SqlConnectionString');//SQL Server數據庫連接

})

 

擴展:

app.UseHangfire(config=>

{

config.UseDashboardPath("/hangfire");//更改儀表板路徑(項目上線時)

})

 

 

設置MiniProfile,在Global.asax.cs中:

 

 

 


Control中,MiniProfiler使用:

 

 

Hangfire Dashboard:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM