SlideShare uma empresa Scribd logo
1 de 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.

Mais conteúdo relacionado

Semelhante a 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
 

Semelhante a 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
 

Mais de 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
 

Mais de 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
 

Último

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Último (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

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.

Notas do Editor

  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.