Hangfire is a set of open-source libraries that help you to create, process and manage your background jobs, i.e. operations you don't want to put in your request processing pipeline.
HangFire It's afantastic framework for background jobs in ASP.NET.
It's even optionally backed by Redis, SQL Server, SQL Azure, MSMQ, or RabbitMQ
documentation is amazing, really. Every open source project's document
should be this polished. Heck, ASP.NET's documentation should be this good.
The best feature from Hangfire is its built in /hangfire dashboard that
shows you all your scheduled, processing, succeeded and failed jobs. It's
really a nice polished addition.
You can enqueue "fire and forget" jobs easily and they are backed
by persistent queues:
- BackgroundJob.Enqueue(() => Console.WriteLine("Fire-and-forget"));
You can delay them...
- BackgroundJob.Schedule(() => Console.WriteLine("Delayed"),
You can do recurrent tasks in CRON style:
- RecurringJob.AddOrUpdate(() => Console.Write("Recurring"),
And you can even chain Jobs like:
- var id = BackgroundJob.Enqueue(() => Console.Write("Hello, "));
- BackgroundJob.ContinueWith(id, () => Console.Wirte("David");
Hangfire it’s so cool and powerfull.
Check out the Hangfire Highlighter Tutorial and the quick start tutorial for more