Building, Running, and Managing Workflows on Windows Azure Jürgen Willis Group Program Manager Microsoft Corporation AZR321
QUEUE
IIS/WAS No persistence No bookmarks No instance control No persistence No bookmarks No instance control Interactive (bookmarks) Persistence Tracking Async execution Single instance Interactive (bookmarks) Persistence Tracking Async execution Single instance WCF activities Activation / instance mgmt Config OOB durable timers WCF activities Activation / instance mgmt Config OOB durable timers IIS Extensions: Windows Server AppFabric SQL tracking store IIS tooling add-ins Auto-start IIS Extensions: Windows Server AppFabric SQL tracking store IIS tooling add-ins Auto-start Function invocation Button click handler Activity testing Function invocation Button click handler Activity testing WorkflowInvoker Run WorkflowApplication Run Resume WorkflowServiceHost Receive Send Host application integration WF-driven UI Host application integration WF-driven UI Integrated WCF messaging Message activation Integrated WCF messaging Message activation
WorkflowApplication WorkflowApplication instance = new WorkflowApplication(new Activity1()); instance.Idle = delegate(WorkflowApplicationIdleEventArgs e) { … }; instance.Completed = delegate(WorkflowApplicationCompletedEventArgs e) { … }; instance.Run(); instance.ResumeBookmark("PleaseContinue", null);
demo MVC + WorkflowApplication Web Site Registration Download link:
WorkflowInvoker w/ ServiceBus in Worker public override void Run() { while (true) { using (var receivedMessage = solutionQueueClient.Receive(TimeSpan.FromSeconds(10))) { if (receivedMessage != null) { this.ProcessReceivedMessage(receivedMessage); } private void ProcessReceivedMessage(BrokeredMessage receivedMessage) { var receivedMathProblem = receivedMessage.GetBody (); var arguments = new Dictionary { { "Problem", receivedMathProblem } }; var output = WorkflowInvoker.Invoke(this.processMessageDefinition, arguments); … }
demo Service Bus + WorkflowInvoker Math Processing Download link: Queue-bc548f79/view/Discussions
demo Workflow Service Hello World WCF WF Service + IIS in web role Hello World
create table [System.Activities.DurableInstancing].[LockOwnersTable] ( … [WorkflowHostType] uniqueidentifier null, … ) e.g.: Deployment(39).ContosoMortgage.ContosoWebRole1.0_Web
demo Workflow Service Hello World WCF WF Service + IIS in web role Mortgage Acquisition Article:
demo->sample Workflow Service with SB Bindings Download link:
Azure Workflow Multi-tenancy High density Artifact management Monitoring & management Service Bus integration Multi-tenancy High density Artifact management Monitoring & management Service Bus integration Workflow as a Service
Fabrikam.com Help Desk SaaS Application Fabrikam.com Help Desk SaaS Application fabrikam.workflow.windows.net Fabrikam Activities Fabrikam IT Contoso Contoso Activities Contoso IT Contoso Users Contoso Workflows PUT
demo Windows Azure Workflow Help Desk ISV
Meetwindowsazure.com DOWNLOAD Windows Azure Windowsazure.com/ teched Hands-On Labs
Connect. Share. Discuss. Learning Microsoft Certification & Training Resources TechNet Resources for IT Professionals Resources for Developers
Complete an evaluation on CommNet and enter to win!
Examples: -Applications -Tenants in a SaaS ISV application Examples: -Applications -Tenants in a SaaS ISV application
Scope Activities Workflows Config Instances Notifications Scope Scope properties: Name / Description Access Claims Status
Long Running Long Running Composition & Coordination Composition & Coordination Application Visibility Application Visibility Custom Authoring Custom Authoring