日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Hangfire Pro 2022-08-31 update

發布時間:2024/1/8 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hangfire Pro 2022-08-31 update 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Hangfire Pro 是一組擴展包,可提高性能并簡化大型應用程序中后臺作業處理的維護。Hangfire Pro 軟件包可通過付費訂閱獲得。購買后,您會收到二進制文件、對私有 NuGet 源的訪問權限以及 GitHub 上的私有存儲庫。

套餐

Hangfire.Pro

有限的存儲支持

請注意,僅當使用Hangfire.SqlServer、Hangfire.Pro.Redis或Hangfire.InMemory包作為作業存儲時,才正式支持 Hangfire.Pro 包。我們不能保證批次可以與其他存儲一起正常工作,因為處理保證在很大程度上取決于具體的存儲實現。

原子背景作業創建

批處理允許您以原子方式創建一堆后臺作業。這意味著,如果在創建后臺作業的過程中出現異常,則不會處理任何一個。假設您想向您的客戶發送 1000 封電子郵件,而他們確實希望收到這些電子郵件。這是舊方法:

for ( var i = 0; i < 1000; i++) {BackgroundJob .Enqueue(() => SendEmail(i));//遇到異常怎么辦? }

但是,如果存儲變得不可用i == 500怎么辦?可能已經發送了 500 封電子郵件,因為工作線程會在它們創建后拾取并處理作業。如果您重新執行此代碼,您的一些客戶可能會收到煩人的重復代碼。因此,如果您想正確處理此問題,您應該編寫更多代碼來跟蹤發送了哪些電子郵件。

但這里有一個更簡單的方法:

需要配置

在使用批處理之前,請調用文檔GlobalConfiguration.Configuration.UseBatches中寫的方法。

批處理作業.StartNew (x => {for ( var i = 0; i < 1000; i++){x.Enqueue(() => SendEmail(i));} });

如果出現異常,您可能會向用戶顯示錯誤,并在幾分鐘后要求重試她的操作。無需其他代碼!

鏈接批次

延續允許您將多個批次鏈接在一起。它們將在父批次的所有后臺作業完成后執行。考慮前面的示例,您有 1000 封電子郵件要發送。如果您想在發送后進行最終操作,只需添加一個延續:

var id1 = BatchJob .StartNew( /* for (var i = 0; i < 1000... */ );var id2 = BatchJob .ContinueBatchWith (id1, x => {x.Enqueue(() => MarkCampaignFinished());x.Enqueue(() => NotifyAdministrator()); });

因此,批處理和批處理延續允許您定義工作流并配置將并行執行的操作。這對于繁重的計算方法非常有用,因為它們可以分布到不同的機器上。

復雜的工作流程

創建操作不會限制您僅在Enqueued狀態下創建作業。您可以安排作業稍后執行、添加延續、將延續添加到延續等。

var batchId = BatchJob .StartNew(x => {x.Enqueue(() => Console .Write ( "1a..." ));var id1 = x.Schedule(() => Console .Write ( "1b..." ), TimeSpan .FromSeconds(1));var id2 = x.ContinueJobWith(id1, () => Console .Write( "2..." ));x.ContinueJobWith (id2, () => Console.Write ( "3..." )); });BatchJob .ContinueBatchWith (batchId, x => {x.Enqueue(() => Console .WriteLine( "4..." )); });

Hangfire.Pro.Redis

Hangfire Pro 附帶Hangfire.Pro.Redis使用Redis服務器來持久化后臺作業和其他數據的軟件包。

Redis 以其出色的性能而聞名,這里是 Hangfire.SqlServer 和 Hangfire.Redis 存儲之間的相對比較結果。

Hangfire.Pro.PerformanceCounters

Hangfire.Pro.PerformanceCounters軟件包允許 Hangfire 將其內部指標發布到 Windows 性能計數器——這是監控 Windows 應用程序和服務的標準方法。

因此,您可以使用Nagios、New Relic、Server Density等現有工具來主動監控服務的運行狀況。

總結

以上是生活随笔為你收集整理的Hangfire Pro 2022-08-31 update的全部內容,希望文章能夠幫你解決所遇到的問題。

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