25
AppFabric and Window Workflow 4 Ron Jacobs Sr. Technical Evangelist Microsoft http://blogs.msdn.com/ rjacobs

Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Embed Size (px)

Citation preview

Page 1: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

AppFabric andWindow Workflow 4

Ron JacobsSr. Technical EvangelistMicrosofthttp://blogs.msdn.com/rjacobs

Page 2: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Host (.exe, Dublin-IIS/WAS, .NET Services, …)

WF Runtime Extensions

Tracking

Persistence

What is WF4?

WF4 provides declarative authoring of programs that coordinate work

ActivitiesRuntimeTooling

Tooling

VS Designer

VS Debugger

Rehosted Designer

WorkflowActivity Library

Page 3: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

WF4 is a Runtime

CLR CLR

WF4Instructio

n

Object

Activity

Page 4: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Why?

CLR CLR

WF4

SafetyMemory

Declarative

Agility

Page 5: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Why Declarative?

Focus on What not HowHow do I allocate memory?How do I avoid race conditions?

“…a leading computer scientist has warned that an easy solution to programming chips with dozens of processors has not yet been discovered.”- New York Times

80 cores in 2011?

Page 6: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Why Agile?

Work should happen when data is ready where resources are availableWork must be agile across 4 dimensions

ThreadProcessMachineTime

Page 7: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Customize The Vocabulary

You decide what operations are allowedProvide high level operations Assemble into a workflow

Page 8: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Customize Design

Page 9: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

WF4

ASP.NET

WF4

AppFabric

WF4

Workflow Everywhere

Client

Page 10: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Developer Tools

Programming Model

Application Services

Relational Database

Operating System

Systems Management

Applications

SERV ICESSERVERS

Application Server Concepts

Page 11: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Activity Model & Runtime

Control Flow Activities

Flowchart SequentialState

Machine

Base Activity Library

Messaging Custom

Activities

Primitives

Rules

Error Handling

Page 12: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Hello Workflow

Demo

Page 13: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow
Page 14: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow
Page 15: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

While

If-Else

Flowchart vs. Procedural Style

DevelopQuote

SendQuote

ManagerReview

DevelopQuote

SendQuote

ManagerReview

Page 16: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Hello Flowchart

Demo

Page 17: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Workflow Services

Service

Service

Service

Activity

Activity

Activity

Services provide communication among application nodes

Activities provide implementation of application nodes

Page 18: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Applicant

Applicant Service

EducationService

Reviewer

1

2

3

4

5

HR Data

Persistence

HR Application Process

Page 19: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Workflow Services

Demo

Page 20: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Windows Server AppFabric

Windows Server

.NET Framework

Windows Server AppFabric

Services

Management Tools

IIS/WAS

Workflows

Runtime DatabasesPersistence Monitoring

HostingPersistenc

eCachingMonitoring

IIS Manager Modules

PowerShell

> Evolution of WAS/IIS and Windows Application Server role to run and manage WCF and WF services

> Ships as part of 2010 Wave

Page 21: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

AppFabricWindows Server and Windows Azure platform

AppFabric

CACHING

SERVICE BUS ACCESS CONTROL

MONITORINGWORKFLOW HOSTING

SERVICE HOSTING

SCALE OUTHIGH AVAILABILITY MULTI-TENANT MANAGEMENT

Page 22: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

AppFabric

Demo

Page 24: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

Summary

WF4 allows you to model business processes and can be used in any .NET processWorkflow Services and AppFabric allow you to create highly scalable and manageable services

Page 25: Host (.exe, Dublin-IIS/WAS,.NET Services, …) WF Runtime Extensions Tracking Persistence … … Tooling VS Designer VS Debugger Rehosted Designer Workflow

For More Information

MSDN Workflow Dev Centerhttp://msdn.microsoft.com/wf

MSDN WCF Dev Centerhttp://msdn.microsoft.com/wcf

MSDN AppFabric Dev Centerhttp://msdn.microsoft.com/appfabric