سعید صفایی | SAEED SAFAEE
(Hangfire)زمانبندی کارهای پیش زمینه
در دات نت کور(زمانبندی کارهای پیش زمینه)Hangfire
کارهای پس زمینه توابعی هستند که ممکن است زمان زیادی برای انجام آنها لازم باشد یا در زمان نامعلوم یا زمانبندی های مشخص در طول روز یا هفته
این کتابخانه یک کتابخانه بسیار انعطاف پذیر است که ویژگی های مختلف مورد نیاز برای تبدیل برنامه زمان بندی کار به برنامه های شما را ارائه می دهد
برای شروع کار ابتدا پگیج مربوطه را نصب کنید:
Install-Package Hangfire.Core
Install-Package Hangfire.SqlServer
Install-Package Hangfire.AspNetCore
تنظیمات مورد نیاز برای پیاده سازی:
startup.cs
// Add Hangfire services.
services.AddHangfire(configuration => configuration
.SetDataCompatibilityLevel(CompatibilityLevel.Version_۱۷۰)
.UseSimpleAssemblyNameTypeSerializer()
.UseDefaultTypeSerializer()
.UseSqlServerStorage(''your connection string, new SqlServerStorageOptions
{
CommandBatchMaxTimeout = TimeSpan.FromMinutes(۵),
SlidingInvisibilityTimeout = TimeSpan.FromMinutes(۵),
QueuePollInterval = TimeSpan.Zero,
UseRecommendedIsolationLevel = true,
DisableGlobalLocks = true
})
);// Add the processing server as IHostedService
services.AddHangfireServer();public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseHangfireDashboard();
app.UseEndpoints(endpoints => {
endpoints.MapControllers();
endpoints.MapHangfireDashboard();
});}
برنامه را اجرا کنید
http://localhost:۵۰۰۰/hangfire
quartz net: سیستم مشابه
موفق باشید