簡體   English   中英

Hangfire 重復性工作不會立即開始

[英]Hangfire recurring job doesn't start immediately

我正在使用 cron 表達式來創建一個經常性的工作。 我正在創建表達式以在一周的 3 天每半小時執行一次。 執行是正確的,但它開始的時間不正確。 假設作業的創建發生在下午 2 點 16 分,作業在下午 2 點 30 分開始執行。 如果我配置為執行 2:20,作業也會在下午 2:30 開始,理想情況下我想在 2:20 開始並每半小時重復一次。 目前我沒有找到從 2 點 25 分開始並每半小時重復一次的方法。

有人可以讓我知道為什么在使用 cron 表達式時會發生這種情況嗎? 有沒有辦法識別這種模式,以便我可以調整我的執行時間。 cron 表達式為“*/30 * * 1,2 1,2,3”

@cocowalla:我使用 sql server 作為后端。 我正在按照hangfire文檔中給出的方式復制連接字符串,但沒有查看輪詢。 除了這個還有別的原因嗎?

docs ,輪詢 SQL 后端,因此開始時間准確性可能會受到限制:

原始 SQL Server 作業存儲實現的主要缺點之一——它使用輪詢技術來獲取新作業。 從 Hangfire 1.7.0 開始,當設置了 SlidingInvisibilityTimeout 選項時,可以使用 TimeSpan.Zero 作為輪詢間隔。

{
    SlidingInvisibilityTimeout = TimeSpan.FromMinutes(5),
    QueuePollInterval = TimeSpan.Zero
};

GlobalConfiguration.Configuration.UseSqlServerStorage("<name or connection string>", options);```

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM