I found that Easy Way Running Background Tasks in ASP.NET , Occasionally, there might be some activity in your web application
that should trigger the need for some code to execute at a later date.
One of the most common cases is sending an email (reminder, change
digest, feedbacks etc), but there are other many uses too. You might want to defer
some processing intensive activity to off hours. In my most recent
case, I needed to check for changes to an purchased/installed
application’s db and replicate them to another product every 5 to 10 minutes
or so.
I’ve solved similar problems before by:
Thanks to Google, I found this article that led me to use a Cache object expiration to simulate the service. It’s a hack, but it solved my issue.
Later, I found this StackOverflow post about the same issue/fix.
More Info :
http://www.foliotek.com/devblog/running-a-scheduled-task/
I’ve solved similar problems before by:
- From the web application, inserting a row in a ‘scheduled tasks’ database with a time to execute and a script url to run
- Creating an running a windows service somewhere that wakes up every 10 minutes or so, looks at the table for ‘due’ items, and opens a request to the url
- You have to learn how to build and deploy a service. Not particularly hard, but something a web developer doesn’t really need to know
- You have to copy or figure out how to share some data access logic between the service and the web application, and maintain changes
- You have to figure out where to deploy the service
- You have to have somewhere to deploy the service – if you are using a shared webhost with no RDP you are out of luck
- It’s hard to be sure the service is running. It’s easy to forget about if your infrastructure changes.
- You need to deal with it when the service errors.
- You have to be careful that the service doesn’t run the same script twice (or make it so it doesn’t hurt anything if it does),in case it gets run on two machines,etc.
- Many more tiny, but real headaches for dealing with and maintaining a separate but connected project
Thanks to Google, I found this article that led me to use a Cache object expiration to simulate the service. It’s a hack, but it solved my issue.
Later, I found this StackOverflow post about the same issue/fix.
More Info :
http://www.foliotek.com/devblog/running-a-scheduled-task/
Comments
Post a Comment