自拍偷在线精品自拍偷|国产无码一区二区久久|最新版天堂资源中文官网|国产精品第一页爽爽影院|国产精品一区二区av不卡|久久久波多野av一区无码|国产欧美日本亚洲精品一4区|亚洲精品天堂在线观看2020

當(dāng)前位置:首頁 > 網(wǎng)站建設(shè) > 正文內(nèi)容

織夢(mèng)源碼安裝方法(織夢(mèng)源碼修改方法)

網(wǎng)站建設(shè)1年前 (2023-08-21)455

前言:

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

一、Hangfire是什么:

Hangfire是一個(gè)開源的.NET任務(wù)調(diào)度框架,提供了內(nèi)置集成化的控制臺(tái),可以直觀明了的查看作業(yè)調(diào)度情況,并且Hangfire不需要依賴于單獨(dú)的應(yīng)用程序執(zhí)行(如:windows服務(wù),window計(jì)劃)。并且支持持久性存儲(chǔ)。

二、Hangfire使用條件:

Hangfire與特定的.NET應(yīng)用程序類型無關(guān)。您可以在ASP.NET Web應(yīng)用程序,非ASP.NET Web應(yīng)用程序,控制臺(tái)應(yīng)用程序或Windows服務(wù)中使用它。以下是要求:

1.NET Framework 4.5

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

3.Newtonsoft.Json庫≥5.0.1

Hangfire與特定的.NET應(yīng)用程序類型無關(guān)。您可以在ASP.NET Web應(yīng)用程序,非ASP.NET Web應(yīng)用程序,控制臺(tái)應(yīng)用程序或Windows服務(wù)中使用它。以下是要求:

1.NET Framework 4.5

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

3.Newtonsoft.Json庫≥5.0.1

通過官網(wǎng)中的一張圖片便可知道它是一個(gè)多么優(yōu)秀的任務(wù)調(diào)度框架,如下圖所示:

展開全文

四、Hangfire安裝和使用: 在NuGet上有關(guān)于Hangfire的 一系列軟件包:

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

通過在程序包管理控制臺(tái)中輸入安裝命令安裝Hangfire所需NuGet包: 使用MS SQL Server作為存儲(chǔ)時(shí)我們需要安裝的NuGet:

在ASP.NET 應(yīng)用程序下使用Hangfire安裝:

在控制臺(tái)應(yīng)用程序或者window server中處理作業(yè):

注意,在控制臺(tái)應(yīng)用程序或者window server中不推薦直接安裝:Install-Package Hangfire ,因?yàn)樗皇且粋€(gè)快速啟動(dòng)軟件包,并包含您可能不需要的依賴項(xiàng)(例如,Microsoft.Owin.Host.SystemWeb等無關(guān)依賴項(xiàng))。

使用MySQL作為存儲(chǔ)時(shí)我們需要安裝的NuGet:

在ASP.NET 應(yīng)用程序下使用Hangfire安裝:

我們還需要安裝一個(gè)MySql存儲(chǔ)(Hangfire.MySqlStorage)的拓展,注意因?yàn)镠angfire本身是不支持MySQL存儲(chǔ)的,這是名為: Arnoldas Gudas作者拓展的:

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

安裝命令:

注意:因?yàn)槲业捻?xiàng)目是.NET Framework,Version=v4.5.1版本的,所以只能安裝1.0.7版本的,大家看需求而定

當(dāng)我們要使用(宿主)IIS托管ASP.NET應(yīng)用程序時(shí),我們還需要安裝:

添加和配置OWIN Startup.cs,及其連接對(duì)應(yīng)的存儲(chǔ)數(shù)據(jù)庫: 添加OWIN Startup.cs

這里是當(dāng)你的項(xiàng)目中不存在Startup.cs時(shí)才需要執(zhí)行添加的操作!

什么是OWIN Startup.cs:

簡(jiǎn)單概述:是.NET 平臺(tái)開放的web接口,Startup則是.Net與web通訊管道,起到轉(zhuǎn)發(fā),溝通的作用。

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

Web.config數(shù)據(jù)庫連接配置:

1.MS SQL Server中:

2.MySQL中:

運(yùn)行程序,訪問調(diào)度控制面板:

當(dāng)我們已經(jīng)完成了上面的相關(guān)配置后,且程序能夠正常無bug的運(yùn)行時(shí),我們的Hangfire Dashboard(儀表盤)在我們的本地就可以正常訪問了(Hangfire儀表盤默認(rèn)只支持本地訪問),假如需要遠(yuǎn)程可訪問的話我們還需要做對(duì)應(yīng)的配置授權(quán)操作!  

運(yùn)行成功,查看數(shù)據(jù)庫中是否生成了與Hangfire相關(guān)的表:

首次運(yùn)行成功后,打開數(shù)據(jù)庫可以看到Hangfire已經(jīng)自動(dòng)為我們創(chuàng)建了定時(shí)任務(wù)的一些定時(shí)任務(wù)列表,定時(shí)隊(duì)列,服務(wù),狀態(tài)等相關(guān)的數(shù)據(jù)表(展現(xiàn)了Hangfire作用的持久化特性),如下圖所示:

a.MS SQL Server中生成的表:

b.MySQL中生成的表:

訪問調(diào)度控制面板:

本地訪問方式:https://localhost:端口號(hào)/hangfire/

調(diào)度控制面板效果圖:

后臺(tái)常用任務(wù)調(diào)度創(chuàng)建和使用:

注意:WriteLog是自己封裝的一個(gè)通用記錄日志的方法!

//延遲任務(wù)執(zhí)行:不是馬上調(diào)用方法,而是設(shè)定一個(gè)未來時(shí)間點(diǎn)再來執(zhí)行,延遲作業(yè)僅執(zhí)行一次varjobId = BackgroundJob.Schedule(=WriteLog( "一天后的延遲任務(wù)執(zhí)行了!"),TimeSpan .FromDays( 1)); //一天后執(zhí)行該任務(wù)

//循環(huán)任務(wù)執(zhí)行:一行代碼添加重復(fù)執(zhí)行的任務(wù),其內(nèi)置了常見的時(shí)間循環(huán)模式,也可基于CRON表達(dá)式來設(shè)定復(fù)雜的模式?!居玫谋容^的多】RecurringJob.AddOrUpdate( = WriteLog( "每分鐘執(zhí)行任務(wù)!"), Cron.Minutely); //注意最小單位是分鐘

//延續(xù)性任務(wù)執(zhí)行:類似于.NET中的Task,可以在第一個(gè)任務(wù)執(zhí)行完之后緊接著再次執(zhí)行另外的任務(wù)BackgroundJob.ContinueWith(jobId, = WriteLog( "連續(xù)任務(wù)!"));

總結(jié):

通過本次項(xiàng)目實(shí)踐的確讓我感受到了Hangfire的魅力所在,真的可以說是上手簡(jiǎn)單,開箱即用的一個(gè)任務(wù)調(diào)度框架。并且該框架做的最好的是,官方文檔詳細(xì),并且還提供了完整的demo示例。最后要為Hangfire的作者點(diǎn)贊!

Hangfire相關(guān)使用學(xué)習(xí)資料:

官網(wǎng)地址:https://www.hangfire.io/

GitHub源碼:https://github.com/HangfireIO/Hangfire

中文文檔:https://www.bookstack.cn/read/Hangfire-zh-official/README.md

GitHub使用示例源碼:https://github.com/HangfireIO/Hangfire.Samples(包括控制臺(tái)應(yīng)用程序,window服務(wù),ASP.NET MVC,WebForm)

Hangfire使用文章匯總:https://www.bbsmax.com/R/xl56E0nrJr/

織夢(mèng)源碼安裝方法(織夢(mèng)源碼修改方法)

了解作者獲取更多學(xué)習(xí)資料

加入DotNetGuide技術(shù)交流群

程序員常用的開發(fā)工具軟件推薦

C#/.NET/.NET Core推薦學(xué)習(xí)書籍

C#/.NET/.NET Core學(xué)習(xí)視頻匯總

C#/.NET/.NET Core優(yōu)秀項(xiàng)目框架推薦

C#/.NET/.NET Core面試寶典(基礎(chǔ)版)

C#/.NET/.NET Core學(xué)習(xí)、工作、面試指南

值得推薦的.NET/.NET Core ORM框架資源匯總

值得推薦的ASP.NET Core開發(fā)者學(xué)習(xí)指南路線圖

學(xué)習(xí)是一個(gè)永無止境的過程,你知道的越多,你不知道的也會(huì)越多,在有限的時(shí)間內(nèi)堅(jiān)持每天多學(xué)一點(diǎn),你一定能成為你想要成為的那個(gè)人。不積跬步無以至千里,不積小流無以成江河?。?!

掃描二維碼推送至手機(jī)訪問。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請(qǐng)注明出處。

本文鏈接:http://m.thonggone.com/post/52317.html

“織夢(mèng)源碼安裝方法(織夢(mèng)源碼修改方法)” 的相關(guān)文章

關(guān)于南京網(wǎng)站制作的信息

關(guān)于南京網(wǎng)站制作的信息

今天給各位分享南京網(wǎng)站制作的知識(shí),其中也會(huì)對(duì)進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、南京做個(gè)網(wǎng)站一般多少錢 2、南京網(wǎng)站模板下載如何制作 3、江蘇南京做網(wǎng)站建設(shè)哪些公司比較好 4、南京雨花臺(tái)區(qū)網(wǎng)站制作設(shè)計(jì),找哪家公司? 在線等答案哦...

網(wǎng)站優(yōu)化公司(深圳網(wǎng)站優(yōu)化公司)

網(wǎng)站優(yōu)化公司(深圳網(wǎng)站優(yōu)化公司)

今天給各位分享網(wǎng)站優(yōu)化公司的知識(shí),其中也會(huì)對(duì)深圳網(wǎng)站優(yōu)化公司進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、網(wǎng)站優(yōu)化的公司,哪家是做得好的? 2、網(wǎng)站優(yōu)化排名公司 3、有沒有seo網(wǎng)站優(yōu)化公司排名推薦? 4、蘇州網(wǎng)站優(yōu)化找哪家 5、北京哪里有...

怎么給視頻加模板邊框(如何給視頻加邊框)

怎么給視頻加模板邊框(如何給視頻加邊框)

今天給各位分享怎么給視頻加模板邊框的知識(shí),其中也會(huì)對(duì)如何給視頻加邊框進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、pr怎么在視頻上加個(gè)邊框 2、拜年視頻邊框怎么加? 3、怎么給自制視頻加邊框? 4、手機(jī)怎么給視頻加黑色橢圓邊框 5、怎樣制作...

h5制作模板免費(fèi)(H5模板免費(fèi))

h5制作模板免費(fèi)(H5模板免費(fèi))

今天給各位分享h5制作模板免費(fèi)的知識(shí),其中也會(huì)對(duì)H5模板免費(fèi)進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、想做個(gè)h5,那么問題來了,h5素材免費(fèi)模板哪里有下載?。?2、有沒有免費(fèi)的h5頁面制作工具 3、比如易企秀、凡科這個(gè)兩個(gè)都是免 費(fèi)的h5工具嗎...

網(wǎng)頁制作圖片位置代碼(網(wǎng)頁設(shè)計(jì)與制作圖片代碼)

網(wǎng)頁制作圖片位置代碼(網(wǎng)頁設(shè)計(jì)與制作圖片代碼)

今天給各位分享網(wǎng)頁制作圖片位置代碼的知識(shí),其中也會(huì)對(duì)網(wǎng)頁設(shè)計(jì)與制作圖片代碼進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、如果我想把圖片顯示在網(wǎng)頁的左右靠最右上下居中的位置,代碼該怎么寫 2、制作網(wǎng)頁,圖片從右像左不段移動(dòng),代碼是什么?指明哪個(gè)地方是放圖...

在網(wǎng)頁HTML源代碼中,()標(biāo)簽是必不可少的的簡(jiǎn)單介紹

在網(wǎng)頁HTML源代碼中,()標(biāo)簽是必不可少的的簡(jiǎn)單介紹

今天給各位分享在網(wǎng)頁HTML源代碼中,()標(biāo)簽是必不可少的的知識(shí),其中也會(huì)對(duì)進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、如何在網(wǎng)頁上顯示html代碼 2、HTML標(biāo)簽在代碼中是什么意思 3、在HTML中,標(biāo)記的作用是__________ 4、...