I have some tasks that will take more than 30 minutes to complete. I have no idea about how to maintain this kind of tasks.Please help me on this
-
Probably best not to put them on a web server anyways. Let your web server handle web requests. Put background processing on an application server. – mason Jan 19 '17 at 05:30
-
1Since you decided not to include results of your research (i.e. https://www.google.com/search?q=background+running+tasks+in+asp.net) it is hard to see what you've already tried. So default duplicate should cover basics - feel free to demonstrate results of your research in future questions. – Alexei Levenkov Jan 19 '17 at 05:42
2 Answers
I have used Hangfire for one of my projects for background task, and I found it extremely good.
Hangfire is an open-source framework that helps you to create, process and manage your background jobs. It comes with out of the box dashboard to track your background job and many more cool feature.
The documentation is very good to get started with the tool. You can find the documentation here.

- 9,174
- 2
- 46
- 61
It needs to be asynchronous as well as distributed(Possibly). In our project we use Akka.Net
to do such tasks. It uses the actor model which are essentially part of the code you ask to do your long async
tasks out of sight in the background.
http://getakka.net/docs/Getting%20started
var greeter = system.ActorOf<GreetingActor>("greeter");
greeter.Tell(new Greet("World"));
In place of GreetingActor
, you'll have your long running process and on the second line of code, you pass it a message which tells it to run async
. There is also a <actor>.Ask()
in cases when you need it to be synchronous
.

- 4,166
- 3
- 35
- 58