SlideShare a Scribd company logo
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Architecting Cloud-based Applications
for Windows Azure Platform
Sergejus Barinovas
Architect, Adform
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Quiz
Who has heard about
Windows Azure Platform?
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Quiz
Who has attended any
Windows Azure presentation?
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Quiz
What parts does Windows
Azure Platform consist of?
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Answer
• Windows Azure Compute
– Web Role
– Worker Role
• Windows Azure Storage
– Blob Storage
– Drive Storage
– Table Storage
– Message Queue Storage
• SQL Azure
– Project Huston
• Windows Azure
AppFabric Client Access
• Windows Azure
AppFabric Service Bus
• Project Dallas
• Project Sydney
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Topic Background
Who has attended any
Windows Azure presentation?
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Topic Background
Who knows how, when and what
part of Windows Azure to use?
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Topic Background
Why?
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Topic Background
Lack of practical presentations!
Captain Obvious
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Disclaimer
This is not a marketing
bu presentation
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Disclaimer
This is not an overview of
Windows Azure Platform
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Disclaimer
This is a practical design session
how to leverage Windows Azure
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
ARCHITECTING FOR THE CLOUD
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Our Current Mindset
• We have enough hardware resources
– Powerful servers
– Fast hard drives
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Our Current Mindset
• Number of servers is more or less fixed
– Failures are very unlike
– All maintenance and new hardware is planned
in advance
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Our Current Mindset
• We have reliable network connection
– Connection time-out is a BUG, not a FEATURE
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Cloud Mindset
• Only mid-range hardware is available and it can
FAIL
– No powerful servers
– No fast hard drives
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Cloud Mindset
• Number of servers is dynamic (unknown)
– Implies scale-out architecture
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Cloud Mindset
• Network connection will always FAIL
– Every operation should have retries
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
ARCHITECTING PINGY
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
What’s Pingy?
Multi-tenant SaaS, that enables monitoring
availability and response times of the external
Web sites
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Pingy Subscriptions
• Personal
– Free of charge
– Monitoring up-to 2 web sites
– Facebook, LiveID and Google authentication
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Pingy Subscriptions
• Professional
– 49€/year
– Custom branding
– Monitoring up-to 20 web sites
– Facebook, LiveID and Google authentication
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Pingy Subscriptions
• Enterprise
– 99€/year
– Custom branding
– Monitoring up-to 200 web sites
– Active Directory authentication
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Architectural Goals
• Scalability
• Availability
• Performance
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #1
Web site Data store
External
web sites
Login()
Save(Url, Period)
Ping
service
GetUrls(Period)
Ping(Url)
Save(Results)
GetStatistics()
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #1: On-Premise Architecture
• Web site
– Stateless ASP.NET application within IIS
• Ping service
– .NET executable within Windows service
• Data store
– SQL Server
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #1: Windows Azure Architecture
• Web site
– Stateless ASP.NET app within Web Role
• Ping service
– .NET executable within Worker Role
• Data store
– SQL Azure / Windows Azure Table Storage
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Windows Azure Roles
• Worker Role
– Windows Server 2008 x64
– .NET Framework 3.5 SP1 and 4.0
– Native Code Full Trust
• Web Role
– Everything Worker Role has
– IIS 7
– ASP.NET (3.5 SP1 and 4.0)
– Fast CGI
• VM Role
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
VM Instances
• Automatically high available and fault-tolerant
• OS updates and patches are applied automatically
• Scale-up VM instance
VM Instance Size CPU Memory Instance Storage I/O Performance
Small 1.6 GHz 1.75 GB 225 GB Moderate
Medium 2 x 1.6 GHz 3.5 GB 490 GB High
Large 4 x 1.6 GHz 7 GB 1,000 GB High
Extra Large 8 x 1.6 GHz 14 GB 2,040 GB High
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
SQL Azure
• Relational database as a service
• A subset of full SQL Server 2008
• Automatically high available and fault-tolerant
• Implements same TDS protocol as a regular SQL does
– Existing tools just works
• Editions
– Web (up-to 5 GB)
– Business (up-to 50 GB)
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Windows Azure Table Storage
• Provide massively scalable structured storage
• No schema stored for a table (NoSQL)
• Mandatory Properties for every entity
– PartitionKey & RowKey
– Timestamp
• Automatic partitioning by PartitionKey
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Blob
storage
Design Iteration #1: Custom Branding
Web site
Login()
Save(Files)
Upload(Theme)
?
Data store
Ping
service
External
web sites
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #1: Custom Branding
Web site Data store
Login()
Save(Files)
Shared
Files
Upload(Theme)
Blob
storage
Data store
Ping
service
External
web sites
http://<account>.blob.core.windows.net/<container>/<blobname>
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Blob Storage
• Provide a simple interface for storing named files
along with the metadata
• Block Blob
– Targeted at streaming workloads
– Size limit 200 GB per Blob
• Page Blob
– Targeted at random read/write workloads
– Size limit 1 TB per Blob
• CDN Option
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #2: Scalability
Web
sites
Data
store
External
web sites
Login()
GetUrls()
Save()
Ping
service
Ping()
Web
sites
Blob
storage
Upload()
Theme()
Table
storage
Save()
GetStats()
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #2: Scalability
Web
sites
Data
store
External
web sites
Login()
Ping
scheduler
GetUrls()
ExecuteTask()
Save()
Pingers
Ping()
Pingers
Web
sites
Blob
storage
Upload()
Theme()
Table
storage
Save()
GetStats()
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #2: Scalability
Web
sites
Data
store
External
web sites
Login()
Ping
scheduler
GetUrls()
Save()
Pingers
Message
queue
Ping()
Pingers
GetTask()
Web
sites
Blob
storage
Save()
Upload() QueueTask()
Theme()
Table
storage
GetStats()
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Windows Azure Queue Storage
• Provide reliable storage and delivery of messages
– Two-step consumption
• Messages put into queue can be processed in any
order and multiple times
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Design Iteration #3: SSO Authentication
Web site
Table
storage
External
web sites
Login()
Save()
Ping
scheduler
GetUrls()
QueueTask()
Save()
GetStats()
Pingers
Message
queue
Ping()
Pingers
GetTask()
Web
sites
Blob
storage
Upload()
Theme()
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
SSO Authentication Challenges
• Multiple authentication protocols and identity providers
• Integrated Active Directory authentication from the
Cloud
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Windows Azure AppFabric Access Control
• Federated, claims-based single sign-on authentication
as a service
• Supports:
– Active Directory Federation Services (AD FS) 2
– OAuth, WS-Trust and WS-Federation protocols
– Live ID, Google, Yahoo and Facebook identity providers
– SAML 1.1, SAML 2.0 and SWT formats
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Summary
• IIS, Web – Web Role
• Windows Service – Worker Role
• SQL Server – SQL Azure, Table Storage
• NoSQL – Table Storage
• Shared Files – BLOB Storage
• Message Queues – Queue Storage
• SSO Authentication – AppFabric Access Control
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Examples, Source Code
• http://sergejus.blogas.lt/tag/pingy
• http://sergejus.blogas.lt/tag/windows-azure
2010 SPALIO 27 D.
Microsoft Partnerių konfrencija 2010
Architecting Cloud-based Applications for
Windows Azure Platform
Q&A

More Related Content

What's hot

Containers on Microsoft Azure
Containers on Microsoft AzureContainers on Microsoft Azure
Containers on Microsoft Azure
Toru Makabe
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile services
Aymeric Weinbach
 
MongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB Days Silicon Valley: Building Applications with the MEAN StackMongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB
 
Javantura Zagreb 2014 - Vaadin - Peter Lehto
Javantura Zagreb 2014 - Vaadin - Peter LehtoJavantura Zagreb 2014 - Vaadin - Peter Lehto
An Unexpected Solution to Microservices UI Composition
An Unexpected Solution to Microservices UI CompositionAn Unexpected Solution to Microservices UI Composition
An Unexpected Solution to Microservices UI Composition
Dr. Arif Wider
 
Javantura 2014 - Java 8 JavaScript Nashorn
Javantura 2014 - Java 8 JavaScript NashornJavantura 2014 - Java 8 JavaScript Nashorn
Javantura 2014 - Java 8 JavaScript Nashorn
Miroslav Resetar
 
Web application I have always dreamt of
Web application I have always dreamt ofWeb application I have always dreamt of
Web application I have always dreamt of
Victor_Cr
 
Webpack and Web Performance Optimization
Webpack and Web Performance OptimizationWebpack and Web Performance Optimization
Webpack and Web Performance Optimization
Chen-Tien Tsai
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)
Jia Mi
 
Get ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience EdgeGet ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience Edge
VarunNehra
 
DotNet MVC and webpack + Babel + react
DotNet MVC and webpack + Babel + reactDotNet MVC and webpack + Babel + react
DotNet MVC and webpack + Babel + react
Chen-Tien Tsai
 
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft AzureBuild 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
Brian Benz
 
Using Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the WebUsing Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the Web
philogb
 
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최���화 살펴보기(하태동)
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)
Sang Don Kim
 
Thats Not Flash?
Thats Not Flash?Thats Not Flash?
Thats Not Flash?
Mike Wilcox
 
ASP.NET: Present and future
ASP.NET: Present and futureASP.NET: Present and future
ASP.NET: Present and future
Hrvoje Hudoletnjak
 
Az 104 session 5: Azure networking
Az 104 session 5: Azure networkingAz 104 session 5: Azure networking
Az 104 session 5: Azure networking
AzureEzy1
 
Developing realtime apps with Drupal and NodeJS
Developing realtime apps with Drupal and NodeJS Developing realtime apps with Drupal and NodeJS
Developing realtime apps with Drupal and NodeJS
drupalcampest
 
Nowosci w portfolio Citrix
Nowosci w portfolio CitrixNowosci w portfolio Citrix
Nowosci w portfolio Citrix
Pawel Serwan
 
Php on azure
Php on azurePhp on azure
Php on azure
Anders Lybecker
 

What's hot (20)

Containers on Microsoft Azure
Containers on Microsoft AzureContainers on Microsoft Azure
Containers on Microsoft Azure
 
Cnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile servicesCnam cours azure zecloud mobile services
Cnam cours azure zecloud mobile services
 
MongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB Days Silicon Valley: Building Applications with the MEAN StackMongoDB Days Silicon Valley: Building Applications with the MEAN Stack
MongoDB Days Silicon Valley: Building Applications with the MEAN Stack
 
Javantura Zagreb 2014 - Vaadin - Peter Lehto
Javantura Zagreb 2014 - Vaadin - Peter LehtoJavantura Zagreb 2014 - Vaadin - Peter Lehto
Javantura Zagreb 2014 - Vaadin - Peter Lehto
 
An Unexpected Solution to Microservices UI Composition
An Unexpected Solution to Microservices UI CompositionAn Unexpected Solution to Microservices UI Composition
An Unexpected Solution to Microservices UI Composition
 
Javantura 2014 - Java 8 JavaScript Nashorn
Javantura 2014 - Java 8 JavaScript NashornJavantura 2014 - Java 8 JavaScript Nashorn
Javantura 2014 - Java 8 JavaScript Nashorn
 
Web application I have always dreamt of
Web application I have always dreamt ofWeb application I have always dreamt of
Web application I have always dreamt of
 
Webpack and Web Performance Optimization
Webpack and Web Performance OptimizationWebpack and Web Performance Optimization
Webpack and Web Performance Optimization
 
John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)John Resig Beijing 2010 (English Version)
John Resig Beijing 2010 (English Version)
 
Get ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience EdgeGet ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience Edge
 
DotNet MVC and webpack + Babel + react
DotNet MVC and webpack + Babel + reactDotNet MVC and webpack + Babel + react
DotNet MVC and webpack + Babel + react
 
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft AzureBuild 2014 - Running Java and Oracle Applications on Microsoft Azure
Build 2014 - Running Java and Oracle Applications on Microsoft Azure
 
Using Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the WebUsing Web Standards to create Interactive Data Visualizations for the Web
Using Web Standards to create Interactive Data Visualizations for the Web
 
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살��보기(하태동)
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)
[Td 2015]함께하면 더 좋은 windows 10과 인텔 스카이레이크, 아키텍쳐와 인텔 그래픽스 최적화 살펴보기(하태동)
 
Thats Not Flash?
Thats Not Flash?Thats Not Flash?
Thats Not Flash?
 
ASP.NET: Present and future
ASP.NET: Present and futureASP.NET: Present and future
ASP.NET: Present and future
 
Az 104 session 5: Azure networking
Az 104 session 5: Azure networkingAz 104 session 5: Azure networking
Az 104 session 5: Azure networking
 
Developing realtime apps with Drupal and NodeJS
Developing realtime apps with Drupal and NodeJS Developing realtime apps with Drupal and NodeJS
Developing realtime apps with Drupal and NodeJS
 
Nowosci w portfolio Citrix
Nowosci w portfolio CitrixNowosci w portfolio Citrix
Nowosci w portfolio Citrix
 
Php on azure
Php on azurePhp on azure
Php on azure
 

Viewers also liked

Kaip Agile skatina gerųjų praktikų panaudojimą
Kaip Agile skatina gerųjų praktikų panaudojimąKaip Agile skatina gerųjų praktikų panaudojimą
Kaip Agile skatina gerųjų praktikų panaudojimą
Sergejus Barinovas
 
Bringing Developers to the Next Level
Bringing Developers to the Next LevelBringing Developers to the Next Level
Bringing Developers to the Next Level
Sergejus Barinovas
 
True story of re architecting website for scale on windows azure
True story of re architecting website for scale on windows azureTrue story of re architecting website for scale on windows azure
True story of re architecting website for scale on windows azure
Sergejus Barinovas
 
Release Often Release Safely
Release Often Release SafelyRelease Often Release Safely
Release Often Release Safely
Sergejus Barinovas
 
Flashback: QCon San Francisco 2012
Flashback: QCon San Francisco 2012Flashback: QCon San Francisco 2012
Flashback: QCon San Francisco 2012
Sergejus Barinovas
 
Windows Azure from practical point of view
Windows Azure from practical point of viewWindows Azure from practical point of view
Windows Azure from practical point of view
Sergejus Barinovas
 
Cloud Computing and Microsoft Azure Platform
Cloud Computing and Microsoft Azure PlatformCloud Computing and Microsoft Azure Platform
Cloud Computing and Microsoft Azure Platform
Sergejus Barinovas
 
Web Scale with NoSQL
Web Scale with NoSQLWeb Scale with NoSQL
Web Scale with NoSQL
Sergejus Barinovas
 
Continuous Happiness by Continuous Delivery
Continuous Happiness by Continuous DeliveryContinuous Happiness by Continuous Delivery
Continuous Happiness by Continuous Delivery
Sergejus Barinovas
 

Viewers also liked (9)

Kaip Agile skatina gerųjų praktikų panaudojimą
Kaip Agile skatina gerųjų praktikų panaudojimąKaip Agile skatina gerųjų praktikų panaudojimą
Kaip Agile skatina gerųjų praktikų panaudojimą
 
Bringing Developers to the Next Level
Bringing Developers to the Next LevelBringing Developers to the Next Level
Bringing Developers to the Next Level
 
True story of re architecting website for scale on windows azure
True story of re architecting website for scale on windows azureTrue story of re architecting website for scale on windows azure
True story of re architecting website for scale on windows azure
 
Release Often Release Safely
Release Often Release SafelyRelease Often Release Safely
Release Often Release Safely
 
Flashback: QCon San Francisco 2012
Flashback: QCon San Francisco 2012Flashback: QCon San Francisco 2012
Flashback: QCon San Francisco 2012
 
Windows Azure from practical point of view
Windows Azure from practical point of viewWindows Azure from practical point of view
Windows Azure from practical point of view
 
Cloud Computing and Microsoft Azure Platform
Cloud Computing and Microsoft Azure PlatformCloud Computing and Microsoft Azure Platform
Cloud Computing and Microsoft Azure Platform
 
Web Scale with NoSQL
Web Scale with NoSQLWeb Scale with NoSQL
Web Scale with NoSQL
 
Continuous Happiness by Continuous Delivery
Continuous Happiness by Continuous DeliveryContinuous Happiness by Continuous Delivery
Continuous Happiness by Continuous Delivery
 

Similar to Architecting Windows Azure

Best practices with SharePoint 2010 sandboxed solutions
Best practices with SharePoint 2010 sandboxed solutionsBest practices with SharePoint 2010 sandboxed solutions
Best practices with SharePoint 2010 sandboxed solutions
Toni Frankola
 
Tech Ed 2010 Attended Sessions
Tech Ed 2010 Attended SessionsTech Ed 2010 Attended Sessions
Tech Ed 2010 Attended Sessions
ridwansassman
 
Florin Loghiade - Windows Server & SCVMM 2012 R2
Florin Loghiade - Windows Server & SCVMM 2012 R2Florin Loghiade - Windows Server & SCVMM 2012 R2
Florin Loghiade - Windows Server & SCVMM 2012 R2
ITSpark Community
 
Sitecore 9 - What's new?
Sitecore 9 - What's new?Sitecore 9 - What's new?
Sitecore 9 - What's new?
Adrian IORGU
 
Nadzor sql a
Nadzor sql aNadzor sql a
Nadzor sql a
Igor Puhalo
 
2014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 3652014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 365
Marco Parenzan
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
K.Mohamed Faizal
 
Exploring, visualizing and presenting data with power view
Exploring, visualizing and presenting data with power viewExploring, visualizing and presenting data with power view
Exploring, visualizing and presenting data with power view
Code Mastery
 
Share Point
Share PointShare Point
Share Point
Rameshwar Trivedi
 
Robert looby resume
Robert looby   resumeRobert looby   resume
Robert looby resume
Robert Looby
 
Office 2010 for IT Pros
Office 2010 for IT ProsOffice 2010 for IT Pros
Office 2010 for IT Pros
Stephen Rose
 
Practical SharePoint 2013 Development Environment
Practical SharePoint 2013  Development EnvironmentPractical SharePoint 2013  Development Environment
Practical SharePoint 2013 Development Environment
Netwoven Inc.
 
Exploring, Visualizing and Presenting Data with Power View
Exploring, Visualizing and Presenting Data with Power ViewExploring, Visualizing and Presenting Data with Power View
Exploring, Visualizing and Presenting Data with Power View
Code Mastery
 
Power BI Create lightning fast dashboard with power bi & Its Components
Power BI Create lightning fast dashboard with power bi & Its Components Power BI Create lightning fast dashboard with power bi & Its Components
Power BI Create lightning fast dashboard with power bi & Its Components
Vishal Pawar
 
How Joomla and Microsoft are a Great Open Source Success
How Joomla and Microsoft are a Great Open Source SuccessHow Joomla and Microsoft are a Great Open Source Success
How Joomla and Microsoft are a Great Open Source Success
Cory Fowler
 
KoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloudKoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloud
Tobias Koprowski
 
Moving to the cloud azure, office365, and intune - concurrency
Moving to the cloud   azure, office365, and intune - concurrencyMoving to the cloud   azure, office365, and intune - concurrency
Moving to the cloud azure, office365, and intune - concurrency
Concurrency, Inc.
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5
Vinayak Tavargeri
 
Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...
Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...
Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...
GeeksLab Odessa
 
AD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesAD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development Futures
Eamon Muldoon
 

Similar to Architecting Windows Azure (20)

Best practices with SharePoint 2010 sandboxed solutions
Best practices with SharePoint 2010 sandboxed solutionsBest practices with SharePoint 2010 sandboxed solutions
Best practices with SharePoint 2010 sandboxed solutions
 
Tech Ed 2010 Attended Sessions
Tech Ed 2010 Attended SessionsTech Ed 2010 Attended Sessions
Tech Ed 2010 Attended Sessions
 
Florin Loghiade - Windows Server & SCVMM 2012 R2
Florin Loghiade - Windows Server & SCVMM 2012 R2Florin Loghiade - Windows Server & SCVMM 2012 R2
Florin Loghiade - Windows Server & SCVMM 2012 R2
 
Sitecore 9 - What's new?
Sitecore 9 - What's new?Sitecore 9 - What's new?
Sitecore 9 - What's new?
 
Nadzor sql a
Nadzor sql aNadzor sql a
Nadzor sql a
 
2014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 3652014.10.22 Building Azure Solutions with Office 365
2014.10.22 Building Azure Solutions with Office 365
 
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World ProjectImplementing SharePoint on Azure, Lessons Learnt from a Real World Project
Implementing SharePoint on Azure, Lessons Learnt from a Real World Project
 
Exploring, visualizing and presenting data with power view
Exploring, visualizing and presenting data with power viewExploring, visualizing and presenting data with power view
Exploring, visualizing and presenting data with power view
 
Share Point
Share PointShare Point
Share Point
 
Robert looby resume
Robert looby   resumeRobert looby   resume
Robert looby resume
 
Office 2010 for IT Pros
Office 2010 for IT ProsOffice 2010 for IT Pros
Office 2010 for IT Pros
 
Practical SharePoint 2013 Development Environment
Practical SharePoint 2013  Development EnvironmentPractical SharePoint 2013  Development Environment
Practical SharePoint 2013 Development Environment
 
Exploring, Visualizing and Presenting Data with Power View
Exploring, Visualizing and Presenting Data with Power ViewExploring, Visualizing and Presenting Data with Power View
Exploring, Visualizing and Presenting Data with Power View
 
Power BI Create lightning fast dashboard with power bi & Its Components
Power BI Create lightning fast dashboard with power bi & Its Components Power BI Create lightning fast dashboard with power bi & Its Components
Power BI Create lightning fast dashboard with power bi & Its Components
 
How Joomla and Microsoft are a Great Open Source Success
How Joomla and Microsoft are a Great Open Source SuccessHow Joomla and Microsoft are a Great Open Source Success
How Joomla and Microsoft are a Great Open Source Success
 
KoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloudKoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloud
KoprowskiT_SQLRelay2014#1_Reading_FromPlanToBackupToCloud
 
Moving to the cloud azure, office365, and intune - concurrency
Moving to the cloud   azure, office365, and intune - concurrencyMoving to the cloud   azure, office365, and intune - concurrency
Moving to the cloud azure, office365, and intune - concurrency
 
What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5What's new in Portal and WCM 8.5
What's new in Portal and WCM 8.5
 
Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...
Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...
Java/Scala Lab: Anton Vidishchev - Microsoft Azure как облачная платформа для...
 
AD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development FuturesAD101: IBM Domino Application Development Futures
AD101: IBM Domino Application Development Futures
 

Recently uploaded

Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
Andrey Yasko
 
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Erasmo Purificato
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
Larry Smarr
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Mydbops
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
Stephanie Beckett
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
huseindihon
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
BookNet Canada
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
Matthew Sinclair
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
UiPathCommunity
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
Enterprise Wired
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Bert Blevins
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
Larry Smarr
 

Recently uploaded (20)

Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
 
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
The Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive ComputingThe Rise of Supernetwork Data Intensive Computing
The Rise of Supernetwork Data Intensive Computing
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
find out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challengesfind out more about the role of autonomous vehicles in facing global challenges
find out more about the role of autonomous vehicles in facing global challenges
 
Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
 
UiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs ConferenceUiPath Community Day Kraków: Devs4Devs Conference
UiPath Community Day Kraków: Devs4Devs Conference
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
 

Architecting Windows Azure

  • 1. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Architecting Cloud-based Applications for Windows Azure Platform Sergejus Barinovas Architect, Adform
  • 2. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Quiz Who has heard about Windows Azure Platform?
  • 3. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Quiz Who has attended any Windows Azure presentation?
  • 4. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Quiz What parts does Windows Azure Platform consist of?
  • 5. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Answer • Windows Azure Compute – Web Role – Worker Role • Windows Azure Storage – Blob Storage – Drive Storage – Table Storage – Message Queue Storage • SQL Azure – Project Huston • Windows Azure AppFabric Client Access • Windows Azure AppFabric Service Bus • Project Dallas • Project Sydney
  • 6. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Topic Background Who has attended any Windows Azure presentation?
  • 7. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Topic Background Who knows how, when and what part of Windows Azure to use?
  • 8. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Topic Background Why?
  • 9. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Topic Background Lack of practical presentations! Captain Obvious
  • 10. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Disclaimer This is not a marketing bu presentation
  • 11. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Disclaimer This is not an overview of Windows Azure Platform
  • 12. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Disclaimer This is a practical design session how to leverage Windows Azure
  • 13. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 ARCHITECTING FOR THE CLOUD
  • 14. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Our Current Mindset • We have enough hardware resources – Powerful servers – Fast hard drives
  • 15. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Our Current Mindset • Number of servers is more or less fixed – Failures are very unlike – All maintenance and new hardware is planned in advance
  • 16. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Our Current Mindset • We have reliable network connection – Connection time-out is a BUG, not a FEATURE
  • 17. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Cloud Mindset • Only mid-range hardware is available and it can FAIL – No powerful servers – No fast hard drives
  • 18. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Cloud Mindset • Number of servers is dynamic (unknown) – Implies scale-out architecture
  • 19. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Cloud Mindset • Network connection will always FAIL – Every operation should have retries
  • 20. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 ARCHITECTING PINGY
  • 21. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 What’s Pingy? Multi-tenant SaaS, that enables monitoring availability and response times of the external Web sites
  • 22. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Pingy Subscriptions • Personal – Free of charge – Monitoring up-to 2 web sites – Facebook, LiveID and Google authentication
  • 23. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Pingy Subscriptions • Professional – 49€/year – Custom branding – Monitoring up-to 20 web sites – Facebook, LiveID and Google authentication
  • 24. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Pingy Subscriptions • Enterprise – 99€/year – Custom branding – Monitoring up-to 200 web sites – Active Directory authentication
  • 25. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Architectural Goals • Scalability • Availability • Performance
  • 26. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #1 Web site Data store External web sites Login() Save(Url, Period) Ping service GetUrls(Period) Ping(Url) Save(Results) GetStatistics()
  • 27. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #1: On-Premise Architecture • Web site – Stateless ASP.NET application within IIS • Ping service – .NET executable within Windows service • Data store – SQL Server
  • 28. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #1: Windows Azure Architecture • Web site – Stateless ASP.NET app within Web Role • Ping service – .NET executable within Worker Role • Data store – SQL Azure / Windows Azure Table Storage
  • 29. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Windows Azure Roles • Worker Role – Windows Server 2008 x64 – .NET Framework 3.5 SP1 and 4.0 – Native Code Full Trust • Web Role – Everything Worker Role has – IIS 7 – ASP.NET (3.5 SP1 and 4.0) – Fast CGI • VM Role
  • 30. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 VM Instances • Automatically high available and fault-tolerant • OS updates and patches are applied automatically • Scale-up VM instance VM Instance Size CPU Memory Instance Storage I/O Performance Small 1.6 GHz 1.75 GB 225 GB Moderate Medium 2 x 1.6 GHz 3.5 GB 490 GB High Large 4 x 1.6 GHz 7 GB 1,000 GB High Extra Large 8 x 1.6 GHz 14 GB 2,040 GB High
  • 31. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 SQL Azure • Relational database as a service • A subset of full SQL Server 2008 • Automatically high available and fault-tolerant • Implements same TDS protocol as a regular SQL does – Existing tools just works • Editions – Web (up-to 5 GB) – Business (up-to 50 GB)
  • 32. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Windows Azure Table Storage • Provide massively scalable structured storage • No schema stored for a table (NoSQL) • Mandatory Properties for every entity – PartitionKey & RowKey – Timestamp • Automatic partitioning by PartitionKey
  • 33. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Blob storage Design Iteration #1: Custom Branding Web site Login() Save(Files) Upload(Theme) ? Data store Ping service External web sites
  • 34. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #1: Custom Branding Web site Data store Login() Save(Files) Shared Files Upload(Theme) Blob storage Data store Ping service External web sites http://<account>.blob.core.windows.net/<container>/<blobname>
  • 35. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Blob Storage • Provide a simple interface for storing named files along with the metadata • Block Blob – Targeted at streaming workloads – Size limit 200 GB per Blob • Page Blob – Targeted at random read/write workloads – Size limit 1 TB per Blob • CDN Option
  • 36. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #2: Scalability Web sites Data store External web sites Login() GetUrls() Save() Ping service Ping() Web sites Blob storage Upload() Theme() Table storage Save() GetStats()
  • 37. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #2: Scalability Web sites Data store External web sites Login() Ping scheduler GetUrls() ExecuteTask() Save() Pingers Ping() Pingers Web sites Blob storage Upload() Theme() Table storage Save() GetStats()
  • 38. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #2: Scalability Web sites Data store External web sites Login() Ping scheduler GetUrls() Save() Pingers Message queue Ping() Pingers GetTask() Web sites Blob storage Save() Upload() QueueTask() Theme() Table storage GetStats()
  • 39. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Windows Azure Queue Storage • Provide reliable storage and delivery of messages – Two-step consumption • Messages put into queue can be processed in any order and multiple times
  • 40. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Design Iteration #3: SSO Authentication Web site Table storage External web sites Login() Save() Ping scheduler GetUrls() QueueTask() Save() GetStats() Pingers Message queue Ping() Pingers GetTask() Web sites Blob storage Upload() Theme()
  • 41. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 SSO Authentication Challenges • Multiple authentication protocols and identity providers • Integrated Active Directory authentication from the Cloud
  • 42. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Windows Azure AppFabric Access Control • Federated, claims-based single sign-on authentication as a service • Supports: – Active Directory Federation Services (AD FS) 2 – OAuth, WS-Trust and WS-Federation protocols – Live ID, Google, Yahoo and Facebook identity providers – SAML 1.1, SAML 2.0 and SWT formats
  • 43. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Summary • IIS, Web – Web Role • Windows Service – Worker Role • SQL Server – SQL Azure, Table Storage • NoSQL – Table Storage • Shared Files – BLOB Storage • Message Queues – Queue Storage • SSO Authentication – AppFabric Access Control
  • 44. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Examples, Source Code • http://sergejus.blogas.lt/tag/pingy • http://sergejus.blogas.lt/tag/windows-azure
  • 45. 2010 SPALIO 27 D. Microsoft Partnerių konfrencija 2010 Architecting Cloud-based Applications for Windows Azure Platform Q&A