我在用 HangFire
与 MySQL
后端。当我做简单的
var jobId = BackgroundJob.Enqueue(
() => Debug.WriteLine("Test"));
我看到5-10秒的延迟,即使我已将轮询速率设置为1秒:
app.UseHangfireServer(new BackgroundJobServerOptions()
{
SchedulePollingInterval = TimeSpan.FromSeconds(1),
ServerCheckInterval = TimeSpan.FromSeconds(1),
HeartbeatInterval = TimeSpan.FromSeconds(1)
});
我的设置是最简单的-服务器和客户端在同一台机器上,队列是空的。我以为延迟不超过1秒。
我不打算使用分布式服务器,我能强迫服务器立即启动任务吗?我假设如果我切换到内存中的hangfire存储,它会立即启动任务https://github.com/perrich/hangfire.memorystorage 但有人说它不应该用于生产。我可以选择什么来优化延迟?
暂无答案!
目前还没有任何答案,快来回答吧!