Note that there are some explanatory texts on larger screens.

plurals
  1. POWorkflow Foundation 4, Best way to execute Workflow
    primarykey
    data
    text
    <p>Before asking a question, and before you all get mad because there are a couple of similar questions, I would like to explain a bit what are project requirements. You will see that question differs from all others.</p> <ul> <li>Users will create workflows using ReHosted WPF application and upload xaml files to web application we will provide.</li> <li>Entry points to start workflow execution is in that web application. They can use UI or consume API function from their own application.</li> <li>Workflows will be long-running.</li> </ul> <p>I'm aware of different possibilities for hosting. </p> <p>Simplest would be to host it <strong>within ASP.NET web application</strong>, but as we are not aware what kind of workflows users will upload, IIS AppDomain recycling could break workflow thread execution.</p> <p><strong>WCF Workflow Services</strong> look nice, but the fact users will upload their own xaml workflow definitions makes things more complicated. Looks like we would have to create something like <em>core</em> workflow, exposed as WCF service, and that workflow will load and execute inner workflow (xaml customers uploaded). Not sure how in parameters would be passed to inner workflow in that case.</p> <p>Third option, and the one looking best to me, is hosting workflow execution in <strong>Windows Service</strong>. Communication between web application and window service can go over MSMQ. Downside of this solutions is maybe boylerplate code to ensure good communication between web app and win service.</p> <p>Am I missing better solution? In case you need more details, just post a comment.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload