dan eshner product unit manager microsoft soa202

27

Upload: brittney-burns

Post on 05-Jan-2016

223 views

Category:

Documents


3 download

TRANSCRIPT

A Lap Around Microsoft Code Name "Dublin"

Dan EshnerProduct Unit ManagerMicrosoftSOA202

Session OverviewIn today’s session we will cover -

“Dublin”: what is it, where does it fit, and why do I care?

Scenario-driven walk through of “Dublin” – the evolution of a customer management app

Scenario: Contoso Rugs – leverage existing apps Stage 1: Consolidate using a single web service managed with “Dublin”Stage 2: Use a simple coordinated workflow managed with “Dublin”Stage 3: Add a self-service customer portal interacting with a long-running workflow managed with “Dublin”

Adding additional enterprise-ready capabilities to services and workflows

Reliability, availability/scalability, routing

“Dublin” component overview

Windows Application Server

Evolution of WPAS/IIS and Windows App Server role to run and manage WF and WCF servicesContinually ship app server value as quickly as possible – first installment: Dev10 waveAdd additional releases through web downloads

It Just WorksMonitoring and Control

Tooling and ScriptingEnterprise-Ready extensions

Windows Server

.NET Framework

“Dublin”

Visual Studio

WF and WCF services

Administration Tools

System Center

IIS/WPAS

Extensions(Codename “Dublin”)

Runtime Services & Components

.NET Framework

“Dublin” Software Stack

Runtime Databases

HostingPersistence Monitoring

Management APIs (PowerShell command-lets)

IIS Manager

IIS/WAS

WCF and WF IIS Manager Modules

Syste

m C

en

ter

“Du

blin” M

an

ag

em

en

t Pack

WCF WF

SaaS CRM App

Web Service(WS-*)

Web UI(ASP.NET)

Database(SQL)

Billing Application

Web UI(?)

Customer Sales

Scenario: Leveraging Existing AppsContoso Rugs - Customer onboarding process today

IssuesScaleVisibility and Control

SaaS CRM App

Customer

Customer Service App

Front End(ASP.NET)

Web Service(WCF)

Database(SQL)

Billing Application

Step 1 – ConsolidateCreate UI that calls a single service

ChangesMoved ASP.NET front end to cover both apps Put WCF web service in front of billing appCreate new WCF service that calls CRM and billing services, and returns an e-mail to the customer

Sales

Web Service(WS-*).NET 4 WCF Service

...string cID =

myCRMClient.AddCucstomer(clientEmail, clientName);

string billingID = myBillingClient.AddCustomer(cID, clientBillingAddress);

myEmailer.SendConfirmation (clientEmail, cID);

...

Web Service(WCF)

Step 1 – Consolidate and Coordinatedemo

BenefitsUsers are shielded from basic errorsWorkflows are automatically suspended on exceptionDublin tools assist in troubleshooting and fixing problemsDublin allows for resuming workflows easily with tools and scripts

"Dublin"

Database

Web Service(WCF)

Step 2 - CoordinateUse workflow to coordinate Web service activities

"Dublin"

Web Service

Customer Sales

Customer Service App

Front End(ASP.NET)

Web Service(WCF)

Workflow Service

Billing Application

SaaS CRM App

Step 2 - CoordinateUse workflow to coordinate Web service activities

"Dublin"

SaaS CRM App

Web Service

Customer Sales

Customer Service App

Front End(ASP.NET)

Service(WCF)

"Dublin"

Web Service(WCF) Database

Billing Application

Workflow Service

App limitationsScale: sales person still required for each new customerInvalid customer e-mail addresses

Customer Service Application

confirmation number

Front-End(ASP.NET)

"Dublin"

Workflow Service

Validate

Step 3i – Self ServiceObtain and validate contact information

ChangesAdded a new customer portal front end (ASP.NET)Added e-mail validation to workflow

Receive

Send mail

Receivename, email,

billing addressconfirmation

number

Add to CRM

Add to billing

Send mail

SaaS CRM App

Web Service

"Dublin"

Web Service(WCF) Database

Billing Application

Customer

Front-End(ASP.NET)

Customer Service Application

"Dublin"

Workflow Service

Validate

Step 3i – Self ServiceObtain and validate contact information

It Just WorksMonitoring and control

Receive

Send mail

Receive

Add to CRM

Add to billing

Send mail

.NET 4 WF Service

Tooling and scriptingEnterprise-ready extensions

Persist

Receive registration & send response

IfElse(Validated)

Receive validation

Delay(5 days)

Send Email

Customer

Step 3 - Correlatedemo

Enterprise-ready Extensions

Availability and scaleMultiple hosts sharing stores

Instance resumeDurable timersRouting service

Availability and Scale

"Dublin"

Workflow Service

"Dublin"

Workflow Service

Persistence Database

Monitoring Database

Network Load Balancer

Workflow Management

Service

Workflow Management

Service

Administration Tool or Script

instance

Resume All

1

2

3

4

5

6

7

89

10

10

"Dublin"

SaaS CRM Application

WCF Service Database

Web Service

Billing Application

Front End

Customer Service Application

Customer "Dublin"

Regular Customer Workflow Service

Step 4 – RoutingPartition customers based on # or rugs sold per month

"Dublin"

Premium Customer Workflow Service

Routing Service

It just worksMonitoring and control

Tooling and scriptingEnterprise-ready extensions

app.config<?xml version=<configuration<appSettings

Sales

Instance Resume

"Dublin"

Workflow Service

Persistence Database

Workflow Management

Service

instance

3

persist

activity

activity

1

2

4

6 5

3

"Dublin"

Workflow Service Host

Durable Timer

Workflow

SQL Persistence Database

Delay

SQL Instance Store

Workflow Management

Service

1

2 3

4

Runtime Services & Components

.NET Framework

“Dublin” Component Overview

Runtime DatabasesPersistence

schemaMonitoring schema

HostingPersistence Monitoring

Management APIs (PowerShell command-lets)

IIS Manager

IIS/WAS

XAML & Config

Activation

Service Hosting

Environment

Auto-Start Provider

Workflow Mgmt

Service

SQL Persistence Provider

Instance Control

Endpoint

WCF Message Logger

WCF Analytic

Trace

Event Collector

ETW Tracking

Routing Service

WCF and WF IIS Manager Modules

Syste

m C

en

ter

“Du

blin” M

an

ag

em

en

t Pack

ASP.NET

WCF WF

Challenges Using WCF And WF TodayCustomer feedback

“I want to get my WF and WCF services up and running easily - Why doesn’t it just work?”

“I want to easily monitor and control running WF and WCF services.”

“I really want better tooling and scripting.”

“I want built-in extensions for enterprise-readiness.” – Availability, Scalability, Routing

Summary

The "Dublin" project is extending IIS/WAS and App Server role in Windows to enhance the support for WF and WCF services

It just worksExtends monitoring and control capabilityAdds scripting and toolingAdds scale, reliability, and routing for enterprise-readiness

Simple and powerfulValue for all WCF services

Discovery, control, monitoring

question & answer

www.microsoft.com/teched

Sessions On-Demand & Community

http://microsoft.com/technet

Resources for IT Professionals

http://microsoft.com/msdn

Resources for Developers

www.microsoft.com/learningMicrosoft Certification and Training Resources

www.microsoft.com/learning

Microsoft Certification & Training Resources

Resources

Related ContentBreakout Sessions

SOA204 The Microsoft Developer Platform for Building Software-Plus-Services Applications

Mon | 1:00-2:15 PM

ARC201 A Lap around Team System 2010 Architecture Edition Mon | 2:45-4:00 PM

SOA201 A First Look at WCF and WF in the Microsoft .NET Framework 4 Tue | 8:30-9:45 AM

SOA202 A Lap around Microsoft Code Name “Dublin” Tue | 2:45-4:00 PM

SOA310 Managing, Tracking, and Troubleshooting Services in “Dublin” Tue | 4:30-5:45 PM

SOA401 Developing Service Oriented Workflows Wed | 8:30-9:45 AM

SOA309 Load Balancing and Scaling Your WCF Services Today and Tomorrow Wed | 4:30-5:45 PM

SOA302 Building RESTful Services Using WCF Thu | 10:15-11:30 AM

SOA206 Every Class As a Service: WCF As the New Microsoft .NET Thu | 2:45-4:00 PM

SOA313 StockTrader Sample Application Case Study: Performance and Java Interop Fri | 10:45-12:00 PM

SOA303 Busy Microsoft .NET Developer's Guide to WCF, SOA, and Success Fri | 1:00-2:15 PM

Plus… Checkout Interactive theater sessions in the TLC area and hands-on-labs

Complete an evaluation on CommNet and enter to win!

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,

IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.