SlideShare a Scribd company logo
1 of 53
Required Slide
Real-World Patterns for Cloud Computing Required Slide SESSION CODE: ARC304 Wade Wegner Technical Evangelist Microsoft Corporation Jerry Schulist Solutions Architect Tribune Company
What is the Tribune Company?
 Three Key Scenarios  1. Storage  2. Compute  3. Scale     Tools, Knowledge, Approach
What will we look at? 4 2 Image Processor (Queue) Content Ingestion Services 3 1 Image Processor(Worker Role) Content(Blob Storage)
So what?
Not just a case study
YOU! :
 Three Key Scenarios  1. Storage  2. Compute  3. Scale
 Uploading Content
 Things to consider Data management today Is it really infinite? Code-near and code-far scenarios Relational data?
 Challenges  1. Running out of disk space  2. Handling archived digital content  3. Data stored across multiple datacenters
Blob storage Image Processor (Queue) Content Ingestion Services 1 Image Processor(Worker Role) Content(Blob Storage)
Leveraging Windows Azure Storage Uploading massive amounts of content into Windows Azure blobs. DEMO
 Key Takeaways  1. Consolidate content in Windows Azure storage   2. Windows Azure Storage SDK best practices  3. Leverage the .NET Framework 4.0
 Abstracting Work with Queues
 Things to consider Loosely coupled and scalable solutions Reliable storage and delivery of messages Idempotency 8KBs per message; up to 100TBs
 Challenges  1. Need to process content  2. Independent of upload  3. Blobs aren’t the best for writing instructions
Queues 2 Image Processor (Queue) Content Ingestion Services 1 Image Processor(Worker Role) Content(Blob Storage)
Leveraging Windows Azure Storage Using Queues to store instructions for content processing. DEMO
 Key Takeaways  1. Use Windows Azure queues to decouple  2. Include all data relevant to work in message  3. Idempotent
 Three Key Scenarios  1. Storage  2. Compute  3. Scale
 Content Processing with Worker Roles
 Things to consider Web Roles verses Worker Roles Decoupling with Windows Azure Queues
 Challenges  1. Require multiple versions of content  2. JIT content processing is slow and expensive  3. Cost
Worker Role 2 Image Processor (Queue) Content Ingestion Services 3 1 Image Processor(Worker Role) Content(Blob Storage)
Leveraging Windows Azure Compute Processing content with Windows Azure Worker Roles DEMO
 Key Takeaways  1. Use worker roles for long running processes   2. Process ahead of time  3. Handle exceptions to prevent role recycling
 Three Key Scenarios  1. Storage  2. Compute  3. Scale
 Scaling Storage Accounts
 Things to consider Isn’t scale automatic? What does elastic scale actually mean? Multiple storage accounts? Multiple queues?
 Challenges  1. Storage account limitation of 100 Terabytes  2. Handle this challenge in a supportable fashion
Worker Role 4 2 Image Processor (Queue) Content Ingestion Services 3 1 Image Processor(Worker Role) Content(Blob Storage)
Scaling in Windows Azure A round robin approach to elastic scale in Windows Azure storage DEMO
 Key Takeaways  1. Multiple storage accounts  2. Round robin through accounts  3. Only pay for what you use
 Scaling Windows Azure roles
 Things to consider Isn’t scale automatic? What ways exist to scale? Cost
 Challenges  1. Determine the number of roles required  2. Auto-scale
Scaling in Windows Azure An approach to implementing auto-scale in Windows Azure DEMO
 Key Takeaways  1. Determine how to scale – queue or performance  2. Scaling service independent of application  3. Pay for what you use; scale wisely
Next Steps  1. Consider the impact that cloud computing will have  on you, your company, and your customers  2. Explore the three scenarios we presented and how they impact you  3. Take advantage of TechEd, product teams, and each other
Resources Required Slide Learning Sessions On-Demand & Community Microsoft Certification & Training Resources www.microsoft.com/teched www.microsoft.com/learning Resources for IT Professionals Resources for Developers http://microsoft.com/technet http://microsoft.com/msdn
Required Slide Complete an evaluation on CommNet and enter to win!
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
© 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.

More Related Content

Similar to Real World Patterns for Cloud Computing

Computing And Information Technology Programmes Essay
Computing And Information Technology Programmes EssayComputing And Information Technology Programmes Essay
Computing And Information Technology Programmes EssayLucy Nader
 
Designing applications with multimedia capabilities
Designing applications with multimedia capabilitiesDesigning applications with multimedia capabilities
Designing applications with multimedia capabilitiesK Senthil Kumar
 
Azure Introduction
Azure IntroductionAzure Introduction
Azure Introductionbrunoterkaly
 
Workshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdfWorkshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdfTobiasGoeschel
 
Design Steps for any MultiMedia Applications
Design Steps for any MultiMedia ApplicationsDesign Steps for any MultiMedia Applications
Design Steps for any MultiMedia Applicationstechbirbal
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudMicrosoft ArcReady
 
Google Data Studio for business
Google Data Studio for businessGoogle Data Studio for business
Google Data Studio for businessOWOX BI
 
Silicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDBSilicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDBDaniel Coupal
 
Refactoring to Microservices
Refactoring to MicroservicesRefactoring to Microservices
Refactoring to MicroservicesJacinto Limjap
 
devworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentationdevworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentationAlex Wu
 
It Launch Plan
It Launch PlanIt Launch Plan
It Launch Plantcaesar
 
Clean architecture with asp.net core
Clean architecture with asp.net coreClean architecture with asp.net core
Clean architecture with asp.net coreSam Nasr, MCSA, MVP
 
MongoDB.local Atlanta: MongoDB Stitch Tutorial
MongoDB.local Atlanta: MongoDB Stitch TutorialMongoDB.local Atlanta: MongoDB Stitch Tutorial
MongoDB.local Atlanta: MongoDB Stitch TutorialMongoDB
 
Architecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons LearnedArchitecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons LearnedJoão Pedro Martins
 

Similar to Real World Patterns for Cloud Computing (20)

Uma SunilKumar Resume
Uma SunilKumar ResumeUma SunilKumar Resume
Uma SunilKumar Resume
 
Computing And Information Technology Programmes Essay
Computing And Information Technology Programmes EssayComputing And Information Technology Programmes Essay
Computing And Information Technology Programmes Essay
 
Designing applications with multimedia capabilities
Designing applications with multimedia capabilitiesDesigning applications with multimedia capabilities
Designing applications with multimedia capabilities
 
Azure Introduction
Azure IntroductionAzure Introduction
Azure Introduction
 
Workshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdfWorkshop - The Little Pattern That Could.pdf
Workshop - The Little Pattern That Could.pdf
 
Design Steps for any MultiMedia Applications
Design Steps for any MultiMedia ApplicationsDesign Steps for any MultiMedia Applications
Design Steps for any MultiMedia Applications
 
vinay-mittal-new
vinay-mittal-newvinay-mittal-new
vinay-mittal-new
 
ArcReady - Architecting For The Cloud
ArcReady - Architecting For The CloudArcReady - Architecting For The Cloud
ArcReady - Architecting For The Cloud
 
Google Data Studio for business
Google Data Studio for businessGoogle Data Studio for business
Google Data Studio for business
 
Silicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDBSilicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDB
 
Refactoring to Microservices
Refactoring to MicroservicesRefactoring to Microservices
Refactoring to Microservices
 
Isset Presentation @ EECI2009
Isset Presentation @ EECI2009Isset Presentation @ EECI2009
Isset Presentation @ EECI2009
 
Lean Content Is Smart Content - Andrew Becraft
Lean Content Is Smart Content - Andrew BecraftLean Content Is Smart Content - Andrew Becraft
Lean Content Is Smart Content - Andrew Becraft
 
Sky High With Azure
Sky High With AzureSky High With Azure
Sky High With Azure
 
GDSC Cloud Jam.pptx
GDSC Cloud Jam.pptxGDSC Cloud Jam.pptx
GDSC Cloud Jam.pptx
 
devworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentationdevworkshop-10_28_1015-amazon-conference-presentation
devworkshop-10_28_1015-amazon-conference-presentation
 
It Launch Plan
It Launch PlanIt Launch Plan
It Launch Plan
 
Clean architecture with asp.net core
Clean architecture with asp.net coreClean architecture with asp.net core
Clean architecture with asp.net core
 
MongoDB.local Atlanta: MongoDB Stitch Tutorial
MongoDB.local Atlanta: MongoDB Stitch TutorialMongoDB.local Atlanta: MongoDB Stitch Tutorial
MongoDB.local Atlanta: MongoDB Stitch Tutorial
 
Architecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons LearnedArchitecting a Large Software Project - Lessons Learned
Architecting a Large Software Project - Lessons Learned
 

More from Wade Wegner

Designing for failure
Designing for failureDesigning for failure
Designing for failureWade Wegner
 
Building High Performance Web Applications with the Windows Azure Platform
Building High Performance Web Applications with the Windows Azure PlatformBuilding High Performance Web Applications with the Windows Azure Platform
Building High Performance Web Applications with the Windows Azure PlatformWade Wegner
 
A Lap Around the Windows Azure AppFabric
A Lap Around the Windows Azure AppFabricA Lap Around the Windows Azure AppFabric
A Lap Around the Windows Azure AppFabricWade Wegner
 
Windows Azure Platform
Windows Azure PlatformWindows Azure Platform
Windows Azure PlatformWade Wegner
 
Day Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformDay Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformWade Wegner
 
Azure Real World - Joseph Paradi
Azure Real World - Joseph ParadiAzure Real World - Joseph Paradi
Azure Real World - Joseph ParadiWade Wegner
 
Wisconsin .NET UG - Windows Azure
Wisconsin .NET UG - Windows AzureWisconsin .NET UG - Windows Azure
Wisconsin .NET UG - Windows AzureWade Wegner
 
.NET Architecture for Enterprises
.NET Architecture for Enterprises.NET Architecture for Enterprises
.NET Architecture for EnterprisesWade Wegner
 

More from Wade Wegner (8)

Designing for failure
Designing for failureDesigning for failure
Designing for failure
 
Building High Performance Web Applications with the Windows Azure Platform
Building High Performance Web Applications with the Windows Azure PlatformBuilding High Performance Web Applications with the Windows Azure Platform
Building High Performance Web Applications with the Windows Azure Platform
 
A Lap Around the Windows Azure AppFabric
A Lap Around the Windows Azure AppFabricA Lap Around the Windows Azure AppFabric
A Lap Around the Windows Azure AppFabric
 
Windows Azure Platform
Windows Azure PlatformWindows Azure Platform
Windows Azure Platform
 
Day Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure PlatformDay Of Cloud - Windows Azure Platform
Day Of Cloud - Windows Azure Platform
 
Azure Real World - Joseph Paradi
Azure Real World - Joseph ParadiAzure Real World - Joseph Paradi
Azure Real World - Joseph Paradi
 
Wisconsin .NET UG - Windows Azure
Wisconsin .NET UG - Windows AzureWisconsin .NET UG - Windows Azure
Wisconsin .NET UG - Windows Azure
 
.NET Architecture for Enterprises
.NET Architecture for Enterprises.NET Architecture for Enterprises
.NET Architecture for Enterprises
 

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

Real World Patterns for Cloud Computing

  • 2. Real-World Patterns for Cloud Computing Required Slide SESSION CODE: ARC304 Wade Wegner Technical Evangelist Microsoft Corporation Jerry Schulist Solutions Architect Tribune Company
  • 3. What is the Tribune Company?
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10. Three Key Scenarios 1. Storage 2. Compute 3. Scale Tools, Knowledge, Approach
  • 11. What will we look at? 4 2 Image Processor (Queue) Content Ingestion Services 3 1 Image Processor(Worker Role) Content(Blob Storage)
  • 13. Not just a case study
  • 15. Three Key Scenarios 1. Storage 2. Compute 3. Scale
  • 17. Things to consider Data management today Is it really infinite? Code-near and code-far scenarios Relational data?
  • 18. Challenges 1. Running out of disk space 2. Handling archived digital content 3. Data stored across multiple datacenters
  • 19. Blob storage Image Processor (Queue) Content Ingestion Services 1 Image Processor(Worker Role) Content(Blob Storage)
  • 20. Leveraging Windows Azure Storage Uploading massive amounts of content into Windows Azure blobs. DEMO
  • 21. Key Takeaways 1. Consolidate content in Windows Azure storage 2. Windows Azure Storage SDK best practices 3. Leverage the .NET Framework 4.0
  • 22. Abstracting Work with Queues
  • 23. Things to consider Loosely coupled and scalable solutions Reliable storage and delivery of messages Idempotency 8KBs per message; up to 100TBs
  • 24. Challenges 1. Need to process content 2. Independent of upload 3. Blobs aren’t the best for writing instructions
  • 25. Queues 2 Image Processor (Queue) Content Ingestion Services 1 Image Processor(Worker Role) Content(Blob Storage)
  • 26. Leveraging Windows Azure Storage Using Queues to store instructions for content processing. DEMO
  • 27. Key Takeaways 1. Use Windows Azure queues to decouple 2. Include all data relevant to work in message 3. Idempotent
  • 28. Three Key Scenarios 1. Storage 2. Compute 3. Scale
  • 29. Content Processing with Worker Roles
  • 30. Things to consider Web Roles verses Worker Roles Decoupling with Windows Azure Queues
  • 31. Challenges 1. Require multiple versions of content 2. JIT content processing is slow and expensive 3. Cost
  • 32. Worker Role 2 Image Processor (Queue) Content Ingestion Services 3 1 Image Processor(Worker Role) Content(Blob Storage)
  • 33. Leveraging Windows Azure Compute Processing content with Windows Azure Worker Roles DEMO
  • 34. Key Takeaways 1. Use worker roles for long running processes 2. Process ahead of time 3. Handle exceptions to prevent role recycling
  • 35. Three Key Scenarios 1. Storage 2. Compute 3. Scale
  • 36. Scaling Storage Accounts
  • 37. Things to consider Isn’t scale automatic? What does elastic scale actually mean? Multiple storage accounts? Multiple queues?
  • 38. Challenges 1. Storage account limitation of 100 Terabytes 2. Handle this challenge in a supportable fashion
  • 39. Worker Role 4 2 Image Processor (Queue) Content Ingestion Services 3 1 Image Processor(Worker Role) Content(Blob Storage)
  • 40. Scaling in Windows Azure A round robin approach to elastic scale in Windows Azure storage DEMO
  • 41. Key Takeaways 1. Multiple storage accounts 2. Round robin through accounts 3. Only pay for what you use
  • 42. Scaling Windows Azure roles
  • 43. Things to consider Isn’t scale automatic? What ways exist to scale? Cost
  • 44. Challenges 1. Determine the number of roles required 2. Auto-scale
  • 45. Scaling in Windows Azure An approach to implementing auto-scale in Windows Azure DEMO
  • 46. Key Takeaways 1. Determine how to scale – queue or performance 2. Scaling service independent of application 3. Pay for what you use; scale wisely
  • 47.
  • 48.
  • 49. Next Steps 1. Consider the impact that cloud computing will have on you, your company, and your customers 2. Explore the three scenarios we presented and how they impact you 3. Take advantage of TechEd, product teams, and each other
  • 50. Resources Required Slide Learning Sessions On-Demand & Community Microsoft Certification & Training Resources www.microsoft.com/teched www.microsoft.com/learning Resources for IT Professionals Resources for Developers http://microsoft.com/technet http://microsoft.com/msdn
  • 51. Required Slide Complete an evaluation on CommNet and enter to win!
  • 52. 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
  • 53. © 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.

Editor's Notes

  1. Good morning! Welcome to ARC304, Real-World Patterns for Cloud Computing.My name is Wade Wegner, and I’m a technical evangelist with Microsoft. Joining me is Jerry Schulist, a solutions architect with the Tribune Company.Before we get started, I want to answer the questions what is the Tribune Company, and why is knowing about them relevant to our talk on real-world patterns for cloud computing.
  2. Wade:Coming from Chicago, when I hear the word Tribune I immediately think of the Chicago Tribune. However, the Tribune Company is more than just the Chicago Tribune – it includes 7 other newspapers, 23 television stations, and a host of radio stations and web sites.Jerry:That’s right. The Tribune company is a large company that in addition to traditional media (like newspapers, radio, and TV) handles over 6.1 billion page views, and is supported by over 32 data centers, over 4,000 servers, and 75,000 sqft of raised floor.Wade:So, suffice to say, it’s a pretty massive company that’s been around for a long time and entrenched in many traditional forms of media.
  3. And this is part of the problem, because for the past 150 years, traditional media such as newspapers …
  4. … radio, and television has been a dominant – if not ONLY– source of information for consumers. Yet, in only the last few years …
  5. … these traditional channels have struggled to keep up with the onslaught of digital and social media.
  6. Consider the US Airways plane that landed in the Hudson river. Where did this story break? Twitter and TwitPic
  7. So, how does the Tribune Company compete? To stay relevant, the Tribune Company has had to reinvent the ways it delivers information to consumers …
  8. … taking an early bet on cloud computing and the Windows Azure platformJerry: Our goal is to create a repository that will bring together editorial content and contextual advertising so that it can be leveraged throughout Tribune to deliver a more compelling user experience all while reducing cost.
  9. In this session we’ll focus on three scenarios that the Tribune Company faced when moving to the cloud, what worked well for them, what was challenging, and also some best practices.We’ll look at …How they leverage Windows Azure storage to store TBs and PBs of content.How they leverage Windows Azure compute for content processing.And challenges solved by scaling in the cloud.You will walk away from this session with tools, knowledge and approach that you can use in your own cloud projects.
  10. To accomplish this, we’re going to look at an existing architecture used by the Tribune Company today. We’re going to walk through the solution used to …Take the rich content the Tribune has, and deploy it into Windows Azure storage.Along the way, we’re going to write instructions to Windows Azure queues, so that …… content processing worker roles can later process the data we’ve uploaded.And finally, we’re going to highlight how to scale both the storage and compute pieces of the solution.
  11. In this talk, we want to show you exactly how to apply these patterns and scenarios in the real world.As we present, I’d like to challenge you to think about your own company and clients, and how you might leverage these patterns and techniques to save them money and create new efficiencies.
  12. And to alleviate your fears, this session is NOT simply a customer case study. We’re going to show you real stuff and how to solve real challenges.
  13. Lastly, there’s an important analogy to draw from the Tribune Company story. Just as the Tribune Company is reinventing itself to stay relevant in a new world of digital and social media, so too do we as Architects and Developers have to reinvent ourselves to stay relevant in a world of cloud computing.So ask yourself, what are YOU doing to stay relevant?
  14. With that, let’s talk about storage.
  15. Two interruptions:1. 2. .NET Framework 4.0
  16. Follow best practices for Windows Azure storage SDKChange app.config so that you can increase parallel internet connectionsbloblClient.ParallelOperationThreadCountIncrease the BlobRequestOptions timeout valueLeverage the .NET Framework 4.0TaskParallel librariesParallel.ForEachEven the TaskParallel libraries can be tweaked to control how it parallelizes work!--Maxconnections set to 12 *’s the number of processorsblobContainer.ParallelOperationThreadCount = some numberUsed for files greater than 32 MBsDefaults to the # of CPU’s on your machineIncrease the timeout value on the BlobRequestOptionsBest practice calculation # of KBs uploading divided by KB throughput per sec
  17. Questions:1. Bandwidth costs w/in the data center – none!
  18. GrzegorzGogolowicz – business strategy w/in MicrosoftJerry, you have a mock of this?
  19. These are transitional times for big media. Consider where the Tribune Company has come from …
  20. … and where they are going as they redefine themselves for a new day of digital and doAnd this transition is not only true for the Tribune Company, as it redefinies itself in a new day of digital and social media, but also for architects and developers that are exploring new ways of leveraging the cloud.