Queue Servicing for Long Asynchronous Processes
-
I am working on a web application that queues reports (Amongst other things) and I am struggling to get my head around the architecture of what I need to do. I have a reporting service that allows users to queue reports (i.e. Insert record into SQL), view the queue, see reports, blah blah blah... The problem I am running into is I am not sure how exactly to process the reports. I am going to need to run whatever process on a hosted server and I am not super familiar with WCF services, so I am a little hesitant. My first iteration of the service included a call to the ProcessReport function whenever someone queued a report, but unfortunately the web client waited for the report to process before returning to the client, so that did not work. Basically I need a process to start when someone queues a report and runs the reports in the background of the server notifying the user when it is done. I have been googling different options for weeks, looking at SQL CEP, MSMQ, WCF etc... and I am not getting a clear option here. Any help is appreciated. Cheers, --EA