Application Scenarios Name Title Microsoft Corporation.

download Application Scenarios Name Title Microsoft Corporation.

If you can't read please download the document

Transcript of Application Scenarios Name Title Microsoft Corporation.

  • Slide 1
  • Application Scenarios Name Title Microsoft Corporation
  • Slide 2
  • Slide 3
  • Web
  • Slide 4
  • Brown Field
  • Slide 5
  • Web Role Table Storage SQL Azure Web Role Cache Queue Blob Storage ACS Web RoleWorker
  • Slide 6
  • Identity Stateless MultiTenancy Deployment
  • Slide 7
  • Slide 8
  • Slide 9
  • Windows Azure Load Balancer uses round-robin allocation. Session state must persist to client or storage on every request LB session[foo] = 1;session[foo] = 2; What is the value of session[foo]? SQL Azure Windows Azure Storage
  • Slide 10
  • Dont forget ASP.NET MVC TempData relies on Session State provider by default
  • Slide 11
  • Multi-Tenancy SaaS Applications often need to serve multiple tenants out of a single service deployment LB tenant1.saasservice.comtenant2.saasservice.com SQL Azure 1 DB per Tenant resolve tenant by examining host header Web Roles Shared by all Tenants http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition tenant1.saasservice.com www.litware.com...
  • Slide 12
  • Slide 13 "> "> " title="
  • - Drivers http://localhost:33779/WcfDataService1.svc/Drivers 2010-05-24T22:12:38Z - http://localhost:33779/WcfDataService1.svc/Drivers(1) 2010-05-24T22:12:38Z - - - 1 1 Rob Tiffany - http://localhost:33779/WcfDataService1.svc/Drivers(2) 2010-05-24T22:12:38Z - - - 2 1 Loke Uei Tan - http://localhost:33779/WcfDataService1.svc/Drivers(3) 2010-05-24T22:12:38Z - - - 3 1 Dan Bouie - http://localhost:33779/WcfDataService1.svc/Drivers(4) 2010-05-24T22:12:38Z - - - 4 1 John Dietz - http://localhost:33779/WcfDataService1.svc/Drivers(5) 2010-05-24T22:12:38Z - - - 5 2 Derek Snyder - http://localhost:33779/WcfDataService1.svc/Drivers(6) 2010-05-24T22:12:38Z - - - 6 2 Steve Hegenderfer - http://localhost:33779/WcfDataService1.svc/Drivers(7) 2010-05-24T22:12:38Z - - - 7 2 Chip Vollers - http://localhost:33779/WcfDataService1.svc/Drivers(8) 2010-05-24T22:12:38Z - - - 8 2 James Pratt http://localhost:33779/WcfDataService1.svc/"http://schemas.microsoft.com/ado/2007/08/dataservices"http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"http://www.w3.org/2005/Atom"http://localhost:33779/WcfDataService1.svc/Drivershttp://localhost:33779/WcfDataService1.svc/Drivers(1)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(2)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(3)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(4)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(5)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(6)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(7)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"http://localhost:33779/WcfDataService1.svc/Drivers(8)http://schemas.microsoft.com/ado/2007/08/dataservices/related/DistributionCenter"http://schemas.microsoft.com/ado/2007/08/dataservices/related/Todays"http://schemas.microsoft.com/ado/2007/08/dataservices/scheme" The same list of 8 Customers using SOAP and a DataSet dropped us down to 3 kb but still too big for my taste. 1 1 Rob Tiffany 2 1 Loke Uei Tan 3 1 Dan Bouie 4 1 John Dietz 5 2 Derek Snyder 6 2 Steve Hegenderfer 7 2 Chip Vollers 8 2 James Pratt http://tempuri.org/"http://www.w3.org/2001/XMLSchema" 1 1 Rob Tiffany 1 2 Loke Uei Tan 1 3 Dan Bouie 1 4 John Dietz 2 5 Derek Snyder 2 6 Steve Hegenderfer 2 7 Chip Vollers 2 8 James Pratt http://www.w3.org/2001/XMLSchema-instance" [{"DistributionCenterId":1,"DriverId":1,"FirstName":"Rob","LastName":"Tiffany"}, {"DistributionCenterId":1,"DriverId":2,"FirstName":"Loke Uei","LastName":"Tan"}, {"DistributionCenterId":1,"DriverId":3,"FirstName":"Dan","LastName":"Bouie"}, {"DistributionCenterId":1,"DriverId":4,"FirstName":"John","LastName":"Dietz"}, {"DistributionCenterId":2,"DriverId":5,"FirstName":"Derek","LastName":"Snyder"}, {"DistributionCenterId":2,"DriverId":6,"FirstName":"Steve","LastName":Harris"}, {"DistributionCenterId":2,"DriverId":7,"FirstName":"Chip","LastName":"Vollers"}, {"DistributionCenterId":2,"DriverId":8,"FirstName":"James","LastName":"Pratt"}]
  • Slide 32
  • Push Notifications
  • Slide 33
  • Windows 8: Windows Push Notification Service (WNS) Windows Phone: Microsoft Push Notification Service (MPNS) iOS: Apple Push Notification Service (APNS) Android: Cloud To Device Messaging (C2DM)
  • Slide 34
  • *NS
  • Slide 35
  • Slide 36
  • Content Delivery Network (CDN) Traffic Manager SQL Azure Data Sync Caching
  • Slide 37
  • Slide 38
  • Slide 39
  • Gaming
  • Slide 40
  • Slide 41
  • Authentication User Settings State Storage Real-Time Communication Game Services: i.e. Leaderboard & Achievements
  • Slide 42
  • Weapons Gifts Achievements User Profiles Notifications
  • Slide 43
  • Slide 44
  • Game Play Worker Role Drew (user id) blob John (user id) blob Game 718AB13 blob Game 1A297EA blob Game E3772AE blob Game Queue 12FC638 blob Game Play API Web Role Mike (user id) blob Game Queue 9B6A6E1 blob Game Queue A62DDE1 blob WriteRead
  • Slide 45
  • Slide 46
  • Social Apps
  • Slide 47
  • Reach an audience of more than 800 million active users Connect to Facebooks rich application platform Broad Reach across devices
  • Slide 48
  • Facebook Core Apps Communication Games Media - Music, Movies, TV, News, and Books Lifestyle - Fitness, Eating, Fashion, and Recreation
  • Slide 49
  • Scale when needed Pay for only what you use Focus on code Iterate rapidly Benefits Client Side Facebook JavaScript SDK Server Side Facebook C# SDK Facebook PHP SDK Tools
  • Slide 50
  • Thuzi: Outback Steakhouse App Scenario Outback Steakhouse wanted to encourage repeat guests by creating a social networking presence. Marketing Campaign with a short cycle Free Bloomin Onion coupon to the First 500,000 guests on the Outback Facebook Fan Page Company Goal was to reach 500,000 fans in 30 days. Outcome No outlay for on premise hardware Needed to scale quickly for spikes and cost-effectively support an unknown number of respondents Solution used Windows Azure with an asynchronous architecture. Web + Worker roles, Cache, SQL Azure, Table Storage 8 weeks development using familiar development tools Viral campaign achieved its 500,000 fans in just 18 days. www.outback.com
  • Slide 51
  • Slide 52
  • Thank you
  • Slide 53
  • 2011 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.