Your SlideShare is downloading. ×
Architecting For The Windows Azure Platform
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Architecting For The Windows Azure Platform

3,121
views

Published on

Deck delivered at the Windows Azure World Tour

Deck delivered at the Windows Azure World Tour

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,121
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
303
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Build and deploy software quickly and easily by capitalizing on the same personnel, development tools investments, and knowledge that already power your IT organization. Use the services platform’s infrastructure to power prototyping environments for experimentation, and then launch to full-scale production as soon as your business needs it. Imagine connecting existing applications with an online database that can be shared with partners, or a service bus that enables secure B2B connectivity across firewalls.Pay as you grow and reduce costs. Pay for the services you use and reduce the capital costs associated with purchasing hardware and infrastructure. Reduce operational costs by running applications on the services platform and decrease the need for maintaining on-premises infrastructure. Increase business efficiency and agility by dynamically adding and subtracting capacity in real time. Envision building an e-commerce Web site that you can scale at the click of a mouse to meet seasonal demands or spikes in traffic based on sales and promotions. Develop a new portfolio of expertise. In these early stages of software development for the cloud, businesses will be seeking the best advice on what this means for their current and future technology investments. Stay ahead of the curve and help your customers understand what cloud computing and development means to their business today and how they can pivot and extend their investments to maximize its value tomorrow. Don’t slow down. Start projects without the hurdles of lengthy training or waiting for new infrastructure to be delivered and installed. With a broad set of services already running on Microsoft global data centers, the services platform is ready to start prototyping and testing solutions.
  • Transcript

    • 1. Architecting for the
      Windows Azure Platform
      David Chou
      david.chou@microsoft.com
      blogs.msdn.com/dachou
    • 2. Application Models
      Web Hosting
      • Massive scale infrastructure
      • 3. Burst & overflow capacity
      • 4. Temporary, ad-hoc sites
      Application Hosting
      • Hybrid applications
      • 5. Composite applications
      • 6. Automated agents / jobs
      Media Hosting & Processing
      • CGI rendering
      • 7. Content transcoding
      • 8. Media streaming
      Distributed Storage
      • External backup and storage
      High Performance Computing
      • Parallel & distributed processing
      • 9. Massive modeling & simulation
      • 10. Advanced analytics
      Information Sharing
      • Reference data
      • 11. Common data repositories
      • 12. Knowledge discovery & mgmt
      Collaborative Processes
      • Multi-enterprise integration
      • 13. B2B& e-commerce
      • 14. Supply chain management
      • 15. Health & life sciences
      • 16. Domain-specific services
    • Case Study
      Background
      • Web-based ERP and accounting software to help mid-sized businesses automate customized business processes
      • 17. Business needs:
      Launch a SaaSoffering which includes on demand infrastructure and billing
      Maintain a 24/7 production environment
      Minimize development efforts for both on-premise and SaaS offerings
      • Technical implementation
      Web – IIS 7, ASP.NET 3.5
      Server – SQL Server 2005/2008, Windows Server 2003/2008
      Tools – Visual Studio 2008, .NET Framework 3.5
      Solution
      • Cloud-based SaaS deployment
      • 18. Windows Azure
      • 19. SQL Azure
      Benefits
      • Application migration completed in 3 weeks with 2 developers
      • 20. Customers can implement solution without investing in on-premise infrastructure; can save ~$8,000 for startup costs
      • 21. Lowered capital expenditures
      • 22. Improved time-to-market and agility in meeting customer needs
      • 23. More strategic use of IT resources
    • Case Study
      Background
      • Online service providing productivity tools to help students conduct research, write better papers, and get help on-demand
      • 24. Technical implementation
      Client – Windows Mobile 6
      Web – IIS 6, ASP.NET 3.5
      Server – Windows Server 2003, SQL Server 2005
      Services – Bing Search, Windows Live Messenger Web Toolkit
      Tools – Visual Studio 2008, .NET Framework 3.5, .NET Compact Framework 3.5
      Solution
      • Hybrid cloud application
      • 25. Cloud-based extensions and services mash-ups with on-premise implementation
      • 26. Windows Azure application
      • 27. .NET Services service bus, access control, & workflows
      Benefits
      • $500,000 savings in dev. costs
      • 28. 40% faster time-to-market
      • 29. More effective development
      • 30. Cost-effective scalability and enhanced availability
    • Case Study
      Local Storage
      Eduify Workflows
      FW—LB—Cache
      Browser
      Internet Clipping Toolbar
      Eduify
      Business Objects
      ASPX Pages
      Full Featured Javascript Editor
      Local / Network File Folder
      SQL Server
      Common Services
      Notification
      Logging
      Security
      JSON / AJAX/ HTTP
      IE 6/7/8* and Firefox
      • Rich Web 2.0 Technologies:
      Javascript
      Java
      Ajax
      CSS
      XHTML
      ASP.NET / CLR
      IIS
      Third Party
      Mashups
      Facebook Connect Integration
      Bing Search Integration for Citation Check
    • 31. Case Study
      Connected w/ Services
      Live Presence
      IM Integration
      Search Citation / Plagiarism
      Mash-up with Microsoft Services
      On-Premise Implementation
      Cloud-Based Extensions
      ASP.NET
      Certain ASPX | Workflows | Service Bus | Access Controls
      Business
      Objects
      Common
      Services
      Workflows
      Service Bus
      SQL Server
      Local Storage
    • 32. Internet-Scale Application Architecture
      Design
      • Horizontal scaling
      • 33. Service-oriented composition
      • 34. Eventual consistency
      • 35. Fault tolerant (expect failures)
      Security
      • Claims-based authentication & access control
      • 36. Federated identity
      • 37. Data encryption & key mgmt.
      Management
      • Policy-driven automation
      • 38. Aware of application lifecycles
      • 39. Handle dynamic data schema and configuration changes
      Data & Content
      • De-normalization
      • 40. Logical partitioning
      • 41. Distributed in-memory cache
      • 42. Diverse data storage options (persistent & transient, relational & unstructured, text & binary, read & write, etc.)
      Processes
      • Loosely coupled components
      • 43. Parallel & distributed processing
      • 44. Asynchronous distributed communication
      • 45. Idempotent (handle duplicity)
      • 46. Isolation (separation of concerns)
    • Presentation
      • ASP.NET C#, PHP, Java
      • 47. Distributed in-memory cache
      Internet-Scale Application Architecture
      Services
      • .NET C#, Java, native code
      • 48. Distributed in-memory cache
      • 49. Asynchronous processes
      • 50. Distributed parallel processes
      • 51. Transient file storage
      Connectivity
      • Message queues
      • 52. Service orchestrations
      • 53. Identity federation
      • 54. Claims-based access control
      • 55. External services connectivity
      SERVICE BUS
      ACCESS CONTROL
      WORK
      FLOWS
      Storage
      • Relational & transactional data
      • 56. Federated databases
      • 57. Unstructured, de-normalized data
      • 58. Logical partitioning
      • 59. Persistent file & blob storage
      • 60. Encrypted storage
    • Application Patterns
      Cloud Web Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Cloud Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application
      Data
      Reference Data
    • 61. Application Patterns
      Composite Services Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 62. Application Patterns
      Cloud Agent Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 63. Application Patterns
      B2B Integration Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 64. Application Patterns
      Grid / Parallel Computing Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 65. Application Patterns
      Hybrid Enterprise Application
      User
      Silverlight
      Application
      Web Browser
      Mobile
      Browser
      WPF
      Application
      ASP.NET
      (Web Role)
      Web Svc
      (Web Role)
      Jobs
      (Worker Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Private Cloud
      Public Services
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      ASP.NET
      (Web Role)
      Enterprise Application
      Application
      Service
      Enterprise Web Svc
      Data
      Service
      Table Storage
      Service
      Blob Storage
      Service
      Queue
      Service
      Enterprise Data
      Storage
      Service
      Identity
      Service
      Enterprise Identity
      Service Bus
      Access Control Service
      Workflow
      Service
      User
      Data
      Application Data
      Reference Data
    • 66. Categories of Services
      Application Services
      Software Services
      Platform Services
      Infrastructure Services
      The Microsoft Cloud
    • 67. Platform of Choice
    • 68. Sign up at the Windows Azure Platform developers’ portal
      Windows Azure access
      Developer tools
      White papers
      Sample applications
      Plan pilot applications, proofs of concept, and architectural design sessions with Windows Azure partners
      http://www.azure.com
    • 69. Thank you
      david.chou@microsoft.com
      blogs.msdn.com/dachou
      © 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.