53
Windows Azure AppFabric Overview Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Embed Size (px)

Citation preview

Page 1: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Windows Azure AppFabric OverviewMaggie Myslinska (Program Manager)

Microsoft Corporation

SESSION CODE: ASI204

Page 2: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

AgendaWhat is Windows Azure AppFabric?How is it used?RoadmapBusiness considerations

Page 3: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Windows Azure Platform

Compute Storage Management ManagementRelational data Connectivity Access control

Page 4: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

easyJet

European, budget, short haul carrier120 destinations across Europe45 million customers/year1000 flights/day, 160 aircrafts

An technology innovator

Page 5: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

easyJet mobile experience

Page 6: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

SOA

easyJet data center

service invocation

easyJet

Expose on-premises web services to devices in a different connectivity contextMust be done in secure fashioneasyJet does not control the network at airports

airport 3

DeviceDevice

Device

airport 2

DeviceDevice

Device

airport 1

Firewall/NAT

DeviceDevice

Device

Firewall/NAT

Page 7: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

SOA

easyJet data center

Firewall/NAT

SB

ACS

Access controlled Outbound https Two-way channel

airport 3

DeviceDevice

Device

airport 2

DeviceDevice

Device

airport 1

Firewall/NAT

DeviceDevice

Device

easyJet

Page 8: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Boarding Payment Checkin

Sales CRM Other

easyJet

Page 9: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Boarding Payment Checkin

Sales CRM Other

Tier 1 Tier 1easyJet

Page 10: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Cross-organizational custom business applicationsLargest IT software investment - Custom Business Solutions that drive the core business

Custom Business Solutions – What we see

Across multiple data sources (typically 3 or

more)

Across companies From 40% to 60% of users outside

corporate network (not FTE’s)

Across hosting environments

(private, public cloud, shared

hosting)

Across communication

avenues(IM, voice, SMS,

email, etc.)

Page 11: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Cross-organizational composite applications – why is this hard?How do you integrate with components outside of your corporate network?How do you expose your software to users outside of your organization?

Can they use existing corporate identities? What about smaller partners?

How do you control access to resources once the service is exposed?What about mobile work force? How can your software find them? How can it send real time notifications/alerts to them?<the list goes on…>

Page 12: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Windows Azure AppFabric

A natural way to extend the reach of existing services through the cloud

Leverage existing investments in SOA and EAI solutions Extend the reach of on-premises web services layerEnable hybrid applicationSecurely integrate with partners outside of the organizational boundaries

Page 13: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

About Windows Azure AppFabricService Bus

Connectivity across network boundariesAccess Control Service

Federated, claims-based authorization for websites and web services

Page 14: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

easyJet - Enabling hybrid applications with AppFabric

easyJet Datacenter

Check In Web Service

Check In System

Airport

easyJet Mobile Device

Page 15: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

EasyJet - Enabling hybrid applications with AppFabric

EasyJet Datacenter

Check In Web Service

Check In System

Airport

easyJet Mobile Device

SB

ACS

Page 16: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

EasyJet - Enabling hybrid applications with AppFabric

EasyJet Datacenter

Check In Web Service

Check In System

Airport

easyJet Mobile Device

SB

ACS

Page 17: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

EasyJet - Enabling hybrid applications with AppFabric

EasyJet Datacenter

Check In Web Service

Check In System

Airport

easyJet Mobile Device

SB

ACS

RulesOUT claims

IN claims

Page 18: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

EasyJet - Enabling hybrid applications with AppFabric

EasyJet Datacenter

Check In Web Service

Check In System

Airport

easyJet Mobile Device

SB

ACS

two-way

one-way

multicast

multiplex

pub/sub

buffered

Communication Patterns

Page 19: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Service Bus

Page 20: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Service Bus

App #1: Web, Mobile, Desktop, LOB, RIA, ...

Connect distributed components to build composite applications

Exchange messages between loosely coupled applications without altering the network topologyNetwork Send/Receive from any Internet connected deviceTraverse NAT/FirewallMessage buffering for loosely connected applicationsFacilitate direct P2P Connection

App #2: Web, Mobile, Desktop, LOB, RIA, ...

Send SendReceive

Service Bus

App 1 App 2

Receive

Page 21: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

How is it used? - Service Bus PatternsService Remoting - Extend SOA to the CloudEventing - Event Distribution; something happens, you get a notificationProtocol Tunneling - Interconnect applications that are not Web Services

All patterns allow forSecure communicationNAT/Firewall traversal

Page 22: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Session Alert!

ASI302Design Patterns, Practices, and Techniques with the

Service Bus in Windows Azure AppFabricSpeakers: Clemens Vasters, Juval Lowy

Thursday June 10 9:45AM – 11:00 AM

Room 265

Page 23: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Access Web Services across the InternetPublish services and communicate bi-directionally

Service Bus

Access Control

Sender Listener

Extend SOA to the Cloud

Service Remoting

Page 24: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Associated Press (AP)

American news agencyhttp://developer.ap.org/Ad Hoc search

How to expose existing service to developers?

Page 25: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Windows Azure

Associated Press (AP)

Developer’s application

http://developer.ap.org

SB

ACS

AP’s Datacenter

Search Service Host

Page 26: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Associated Press (AP)

Service Remoting characteristicsExpose existing assets to Internet consumers

Benefits of using Service BusExpose internal functionality easilyNo changes to the networking infrastructureNo large up front technology investmentSaved time on completing the project

Page 27: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Dinner Now

Food Home-Delivery SiteRestaurants in your areaOne-stop shopping

Central order processing, distributed order fulfillment

Page 28: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Dinner NowRestaurantDinnerNow Inc. (Cloud? On prem?)

Web Store Front

Web Backend Service Tier

Restaurants + Menus

In-Store Tier

In-Store Kiosk

Order Handling System

CRM

Order Processing System

1DinnerNow.net customer orders food through the website.

1

Users logs in and chooses food. Site stores user’s info.

2

Order submitted for processing.

3

2

3

Order is routed to the fulfilling Restaurant(s)

3

Page 29: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

DinnerNow Inc. (Cloud? On prem?)

Dinner Now

Web Store Front

Web Backend Service Tier

Restaurants + Menus

Restaurant

In-Store Tier

In-Store Kiosk

Order Handling Workflow

CRM

Order Processing System

SB

ACS

Restaurant

In-Store Tier

In-Store Kiosk

Order Handling System

Page 30: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Service Bus

Access Control

Eventing

Notify remote parties of eventsSender transmits information to listenersEvents are distributed unicast or multicast

Sender

Listener

Listener

Event Distribution; something happens and you get a notification

Page 31: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

easyJet

Familiar exampleMaintain common state between devices

Notify when changes are made Problem:

Send notifications to disconnected devices

Page 32: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

SOA

easyJet data center

Firewall/NAT

SB

ACS

airport 3

DeviceDevice

Device

airport 2

DeviceDevice

Device

airport 1

Firewall/NAT

DeviceDevice

Device

easyJet

notifications

Page 33: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

easyJet data center

Firewall/NAT

SB

ACS

airport 3

DeviceDevice

Device

airport 2

DeviceDevice

Device

airport 1

Firewall/NAT

DeviceDevice

Device

easyJet

notifications

SOA

Page 34: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

easyJet

Eventing characteristicsNotify other devices when changes are made

Benefits of using Service BusOut of the box scalable messaging solutionNo large up front technology investment Saved time on completing the projectNo networking infrastructure changes

Page 35: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Service Bus

Access Control

Tunneling

Transport existing protocols over Service Bus

Sender Listener

Protocol Bridge

Protocol Bridge

Interconnect applications that are not Web Services

Page 36: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Access Control Service

Page 37: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Contoso’s datacenter

Website or Web Service

Access Control

Database

CRM

Mobile workforce

Enterprise partner

Small vendor

How will I control access to the service? How will I onboard partners to this solution? Can they use existing method of authentication?

Page 38: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Access Control Service

Usable from any platform (for real) Integrates with AD FS v2

Many identity providers, one code base

Provides claims-based access control for web services

WS-*

Open ID: Google, Yahoo

OAuth

Facebook

Web or RichApplication

StandardProtocols

and“Big Dogs”

StandardProtocols

Access Control Service

Page 39: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

How it works – Contoso and ACS

Contoso’s ACSService Namespace

Contoso Web Service

5. Request Access

Token

(Claims)

7. Return Access Token

(output claims from

6)

8. Send Messagew/ Access Token

0. Establish trust (certificate or key exchange)

Contoso’s partner

1. Define access control rules for a customer

9.Token Validated

6. Map input claims to output claims based on access control rules

Identity Provider

3. R

eque

st a

toke

n

4. R

etur

n th

e to

ken

2. Establish trust (certificate or key exchange)

Page 40: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Session Alert!

ASI308Programming AppFabric: Moving Microsoft .NET to the

Cloud Speakers: Aaron Skonnard, Keith Brown

Thursday June 10 3:15PM – 4:30 PM

Room 398

Page 41: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Roadmap

Page 42: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

AppFabric EnvironmentsProduction

Paying customers, supportable, SLA3 month release cadence<your-name-space>.servicebus.windows.netGeo located today, additional Geo’s coming

LabsFree, no support, no SLA~3 month release cadence <your-name-space>.servicebus.appfabriclabs.com

Page 43: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Futures

March ‘10 V-Next

Silverlight support Multicast with

Message Buffers

Advanced messaging features (ie. durability) BizTalk Server integration Windows Server AppFabric integration Web SSO and service federation

WS-Federation Considering additional identity providers

Windows Live ID Open ID Facebook Connect

Management UI

Labs

Page 44: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Business Considerations

Billing and PricingIndividual and Pack based billing

Support24/7 Developer and Live Site Issues SupportBilling and Subscription Management SupportCommunity Support via Forums

Global Presence

Page 45: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Billing and Pricing

Service BusIndividual @ $3.99 per connection-monthPack based @ $1.99 per connection-month

Applies when you purchase connection “packs”

Access ControlConsumption @ $1.99 per 100K transactions

Bandwidth charge – same as Windows Azure

Page 46: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Global PresenceLargest Production compute application deployed on Windows AzureCo-locate with Windows Azure

RegionsUSA, Europe, Asia

Sub-regionsUS South CentralUS North CentralEurope NorthSoutheast Asia

SoonEurope WestEast Asia

Page 47: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

ASI Track Resources1. Website – www.Microsoft.com/WindowsAzure/AppFabric 2. MSDN Developer Center – http://msdn.microsoft.com/en-us/azure/netservices.aspx 3. Blog – http://blogs.msdn.com/b/netservices/ 4. Twitter – http://twitter.com/azure_appfabric 5. Website – http://www.microsoft.com/biztalk/6. Website – http://msdn.microsoft.com/biztalk/7. Blog – http://blogs.msdn.com/biztalk_server_team_blog8. Blog – http://www.biztalkblogs.com/9. Application Infrastructure Virtual Launch Event – www.appinfrastructure.com10. AppFabric on Microsoft.com – http://www.microsoft.com/appfabric11. Developer Center – http://msdn.microsoft.com/appfabric

Page 48: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Resources

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

Resources for IT Professionals Resources for Developers

www.microsoft.com/learning

http://microsoft.com/technet http://microsoft.com/msdn

Learning

Page 49: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Complete an evaluation on CommNet and enter to win!

Page 50: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st

http://northamerica.msteched.com/registration

You can also register at the

North America 2011 kiosk located at registrationJoin us in Atlanta next year

Page 51: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

© 2010 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.

Page 52: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

Windows Server AppFabric vs Windows Azure AppFabric

Secure connectivity and federated authentication across on-premises and cloud

Service Bus – secure, cross firewall communications relayAccess Control – claims based, federated authorization

Improves performance, availability, scale, and management of web and composite applications

Caching - Faster web apps made easyManagement - Simplified composite applicationsHosting – Enterprise Performance and Availability

Page 53: Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204

JUNE 7-10, 2010 | NEW ORLEANS, LA