Workflow - choosing the appropriate host environment

The application that I'm designing will retrieve and store content from a variety of disparate sources on a schedule. In some cases, the content will be retrieved based on a time interval (think stock quotes), and in other cases the content will be retrieved based on a custom schedule (MWF @ 2pm). Many of the processes lend themselves to MS Workflow. The built-in SQL tracking service will provide a lot of value. The content sources are sufficiently different that each different type of content retrieval will be a custom workflow.

My question is, how should I host, monitor,schedule, and expose the Workflows?

Requirements:

  • Must be able to monitor the health of each content "agent" via admin UI
  • Must be able to start and stop individual workflows via admin UI
  • Workflows are recurring based on a schedule, but not necessarily "long-running"
  • "Service" must have high availability

Windows service, Workflow Service, ASP.Net, WCF are all available to me, and I'm open to other suggestions as well.

Answers


WF and WCF can be hosted as one WindowsService,

You can create a set of services to expose the state/information from the Workflow in WindowsService via WCF web service. Therefore the WCF service should have a reference to your workflow exchange contract ( somehow can reference to workflow engine to deliver the request info from client UI).

  • Must be able to monitor the health of each content "agent" via admin UI

The Admin UI can retrieve the data from the webservice which

  • Must be able to start and stop individual workflows via admin UI

Let the workflow instance to handle a specific event to start or stop

  • Workflows are recurring based on a schedule, but not necessarily "long-running"

Let the workflow instance to handle a specific event to do so

  • "Service" must have high availability

WindowsService is daemon alike application, it runs forever if it doesn't crash


I found this post helpful as well:

http://www.dotnetconsult.co.uk/weblog2/PermaLink,guid,77c334e8-0ec1-4f91-ab7e-0bcfa7f2f47d.aspx


You may want to look into Dublin, Microsoft's upcoming integrated host for workflow services. It's not out yet, but offers some of the features you're looking for.


Need Your Help

MySQL VARCHAR strange column behavior

mysql varchar

I have the following SQL statement which returns a single record as expected:

Weird result of CPLEX "cplexmilp" function in MATLAB

matlab mathematical-optimization linear-programming cplex

According to my previous question, I want to optimize an objective function using binary integer linear programming (all of variables are binary) as follows: