Moving wf applications to the cloud

719 views

Published on

A quick view on Windows Workflow, the available feature sets and how to implement them, and the benefits of using WF in applications residing in Azure

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
719
On SlideShare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Moving wf applications to the cloud

  1. 1. Cai Zonghe / NCS Pte Ltdt: @caizonghee: caizonghe@gmail.comw: studiohub.wordpress.com
  2. 2.  Introduction to WF Context of WF in Azure Migration/development options Quick Dive Demo (Basic WF) Quick Dive Demo (Advanced WF) Partial Demo (Azure Composite Application)
  3. 3.  Introduction to WF Context of WF in Azure Migration/development options Quick Dive Demo (Basic WF) Quick Dive Demo (Advanced WF) Partial Demo (Azure Composite Application)
  4. 4.  Long running processes ◦ Seconds / Minutes / Days / Months / Years ◦ System / Human ◦ Unreliable external world  Systems fail  People forget Complex processes ◦ Declarative representation of a process ◦ Easy to validate ◦ Increase maintainability
  5. 5.  Versions: ◦ .Net 3.0 / 3.5 – Sequence / State Machines ◦ .Net 4.0 – Sequence / Flowchart ◦ .Net 4.0 Update 1 – State Machines ◦ .Net 4.5 (Upcoming) – Contract First WF / Version Handling / C# Support Hosting ◦ Self Host – Windows Service / Exe ◦ IIS / WAS – [Windows Workflow Service Application]
  6. 6.  Introduction to WF Context of WF in Azure Migration/development options Quick Dive Demo (Basic WF) Quick Dive Demo (Advanced WF) Partial Demo (Azure Composite Application)
  7. 7.  Handled by Batchjobs on premise ◦ Mainframe concept, batch window / duration ◦ “Free” ◦ BJ mapped to worker roles in Azure  Not feasible to spin up workers / effective polling  Responsible for framework level stuff  Multi-threading, lock management, etc  Recovery from errors  Monitoring
  8. 8.  WF is built to be used by multiple systems ◦ Simple process workflow / complex business processes ◦ Resource queuing / lock mangement etc ◦ Recovery from errors ◦ Monitoring (with AppFabric) Azure provides elastic scale Azure AppFabric Composite Application ◦ Monitoring ◦ Recovery
  9. 9.  Introduction to WF Context of WF in Azure Migration/development options Quick Dive Demo (Basic WF) Quick Dive Demo (Advanced WF) Partial Demo (Azure Composite Application)
  10. 10.  Prerequisites ◦ Microsoft .Net 4.0 ◦ Microsoft .Net 4.0 Update 1 ◦ Azure SDK 1.6 (Nov) ◦ Azure AppFabric Tools (June CTP) ◦ Azure / AzureSQL / CompApp Accounts ◦ Persistence scripts  <WinDir>Microsoft.NETFrameworkv4.0.30319SQL en
  11. 11.  Current State ◦ On-Premise WF Application with on-premise DB  .Net 4.0 Sequence WF  .Net 4.0 Update 1 State Machine WF  Requires WF Persistence  Requires Custom Property Persistance  References external WCF / Web services  Requires ability to suspend/resume/terminate running workflows
  12. 12.  Cloud Option ◦ On-Premise WF Application with Azure SQL DB  Run Schema.sql (Run this to clear DB for dev purpose)  Run Logic.sql  - High Overhead to configure Firewalls / Security / Network  - High Latency
  13. 13.  Cloud Option ◦ Azure Web Role hosting WF Application
  14. 14.  Cloud Option ◦ Azure Web Accelerator Project  Using Web Deploy  X Unable to publish endpoint [ WIP ]
  15. 15.  Cloud Option ◦ Azure AppFabric Composite Application  Different approach to looking at application  No more handling ServiceModel Client configuration for endpoints  Uses a service locator pattern to register and resolve deployed applications  Applications can be dynamically redeployed to scale  Provides representation of how the various components work together.
  16. 16.  Cloud Option ◦ Azure AppFabric Composite Application  Different approach to looking at application  No more handling ServiceModel Client configuration for endpoints  Uses a service locator pattern to register and resolve deployed applications  Applications can be dynamically redeployed to scale  Provides representation of how the various components work together.
  17. 17.  Cloud Option ◦ Azure AppFabric Composite Application  X CTP only  X Only if you can get an account  X A lot of configurations for Workflow
  18. 18.  Quick Dive Demo (Basic WF) ◦ Web App to place order via WF service ◦ WF Service records order ◦ WF Service checks inventory ◦ WF Service calls payment service ◦ WF Service calls shipping service ◦ WF Service waits for shipping update ◦ WF Service completes when item delivered
  19. 19.  Quick Dive Demo (Advanced WF) ◦ How WF persistence is done ◦ How WF custom property persistence is done ◦ How to recover from WF errors
  20. 20.  Partial Demo (Azure Composite Application)

×