Windows Workflow in Azure
Asked Answered
G

2

7

I am building an application which will be running workflows on Azure.

I have seen the build presentation Building Applications with Workflow and Azure – BUILD 2011 which discusses what is capable today, as well as what will be possible going forward. One thing that is discussed is something called the "Azure Workflow Service", which I understand is scheduled to be previewed in 2012. However, I haven't been able to find out much more information about it.

Additionally, there's an earlier presentation Workflow in Windows Azure AppFabric which discusses more about workflows in Azure, focusing on the Windows Azure AppFabric CTP. There's a lot of cool functionality discussed in this presentation, but I am not sure if any of that functionality is available now or if not, when it might be available.

So two questions:

If I need to build the application today, what is the suggested approach for implementing workflows on Azure?

If the application does not need to be finished until a year from now or so, what is the suggested approach for implementing workflows on Azure?

Greylag answered 13/3, 2012 at 17:49 Comment(1)
I would love to know what happened to "Azure Workflow Services". All my attempts to find out more about this was in vain - I even contacted the MS guy who made the announcement on Twitter to ask about it, but did not receive any response (he has moved on to other projects). I am really concerned about WF - it seems that MS have left it to die a quiet death - it seems that they are not investing in developing this tech anymore.Lackadaisical
S
3

Right now hosting a workflow service in Windows Azure is not much different that hosting it yourself in a web application on IIS without the benefit of using Windows Server AppFabric. You can use SQL Azure as the instance store. You will need to get Microsoft .NET Framework 4 Platform Update 1 as this update changed the SQL scripts to be compatible with SQL Azure.

See here. Anotheer post I did on the subject is here but keep in mind that the script issue is solved by the Framework 4 Platform Update 1 and that also includes support for the transient connection conditions mentioned.

Systematic answered 14/3, 2012 at 9:21 Comment(1)
Not really an answer, I'm afraid. The question focused on "Azure Workflow Service" which was promised to be released in 2012, but appears to have amounted to absolutely nothing. There is this thing called "Workflow Manager version 1", but there is precious little published about this software as well.Vardon
R
0

The official advice I've been given is to use Azure Logic Apps and Azure Function Apps in conjunction with one another having the Logic App do orchestration and Function Apps provide your workflow functionality.

This video on channel9 talks about it in detail ...

https://channel9.msdn.com/Events/Ignite/Microsoft-Ignite-Orlando-2017/BRK3179

... The Issue I have found is that the Logic Apps engine is an orchestration engine and not extensible so to complete the solution I think the ultimate solution would be something like an Azure Logic App for the business process that calls a Function for each workflow that needs to be run.

I have built my own workflow engine that I am hosting inside an Azure function with no guidance from MS on the matter ... their best advice was "get a £50,000 / year contract with the Premier Field Engineers program to have them come in and build it with you".

In our case, our flows / business processes are defined by our clients so we can't just hard code anything about how the business logic runs (e.g. by writing a fixed block of code in a function) and by treating a Function like a workflow Activity (think WF here) you would be following MS best practice but we found that our flows were sufficiently complex that the cost of executing flows in that manner would cost us real money for each execution.

This is how I ended up coming to the conclusion about running an entire flow inside a function. In your case you can execute WF flows from a function to achieve the same solution we have.

Where this all falls down is that MS guidance on functions says that they should be a fast short lived REST call to do a small piece of work (perfect fit for an activity), so there's no telling what might happen when we embed a whole flow execution in there at this point your outside of their support offering from what I can tell and essentially "on your own" unless you take that £50,000 a year contract.

My thinking is ... try it, test the limits, put those in your code to prevent the functions framework breaking.

In light of this I have proposed through the feedback community that MS make functions embedd-able in to a logic app directly removing the overhead and our need to implement a separate flow engine.

https://feedback.azure.com/forums/34192--general-feedback/suggestions/36979045-workflow-solution

... if this gets approved we could design business processes as logic apps that call flows which would be built as other logic apps to stack the complete solution entirely on MS infrastructure "out of the box" without us having to jump through behind the scenes loops to make all this stuff fit when logic apps can't do something.

Racism answered 28/2, 2019 at 9:38 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.