hangfire 實現已完成的job設置過時,防止數據無限增加

一、添加SucceededStateExpireHandler 繼承接口 IStateHandler
public class SucceededStateExpireHandler : IStateHandler { public TimeSpan JobExpirationTimeout; public SucceededStateExpireHandler(int jobExpirationTimeout) { JobExpirationTimeout = TimeSpan.FromMinutes(jobExpirationTimeout); } public string StateName => SucceededState.StateName; public void Apply(ApplyStateContext context, IWriteOnlyTransaction transaction) { context.JobExpirationTimeout = JobExpirationTimeout; } public void Unapply(ApplyStateContext context, IWriteOnlyTransaction transaction) { } }

二、git

public IServiceProvider ConfigureServices(IServiceCollection services)
{
..........................
GlobalStateHandlers.Handlers.Add(new SucceededStateExpireHandler(int.Parse(Configuration["Hangfire:JobExpirationTimeout"])));
app

}ide

 

 

https://gitee.com/conan5566linyiling/conan.netspa

相關文章
相關標籤/搜索