Date post: | 13-Jun-2015 |
Category: |
Technology |
Upload: | hanneke-dotnet |
View: | 973 times |
Download: | 0 times |
The one-stop company for .NET development
Microsoft Azure
By: Rob Brommer
6-10-2011 1
The one-stop company for .NET development
Windows Azure Platform
6-10-2011 2
The one-stop company for .NET development
Windows Azure
6-10-2011 3
Cloud Operating SystemCloud Operating System
The one-stop company for .NET development
Windows Azure Service Architecture
6-10-2011 4
StorageStorage
LBLB
Windows Azure Data Center
LBLB
LBLB
The InternetThe InternetThe Internet via TCP or HTTP
The one-stop company for .NET development
Worker Role Patterns• Queue Polling Worker– Poll and Pop Messages within while(true) loop– E.g. Map/Reduce pattern, background image processing
• Listening Worker Role– Create TcpListener or WCF Service Host– E.g. Run a .NET SMTP server or WCF Service
• External Process Worker Role– OnStart or Run method executes Process.Start()– Startup Task installs or executes background/foreground
process– E.g. Run a database server, web server, distributed cache
6-10-2011 5
The one-stop company for .NET development
Web Role
• All features of a worker role + IIS 7 or 7.5• ASP.NET 3.5 SP1 or 4.0 – 64bit• Hosts– Webforms or MVC– FastCGI applications (e.g. PHP)– Multiple Websites
• Http(s)
6-10-2011 6
The one-stop company for .NET development
Virtual Machine Role• Provided to help you move applications to Windows Azure• Enables you to have full control over the OS Image
– Create your VHD locally– Upload the VHD to storage– Deploy a service package that uses the custom OS image– The role is your VM – Specify <OsImage href="20101020BaseVM.vhd" /> in the .cscfg
• Key considerations– Image must be Windows Server 2008 R2 Enterprise– Designed for long or non-automated installs– No durability of OS image– You configure and maintain the Operating System
• Currently available as a limited beta
6-10-2011 7
The one-stop company for .NET development
VM Size in Windows Azure
Compute Instance Size CPU Memory Instance
Storage
I/O Performanc
e
Cost Per Hour
Extra Small 1.0 GHz 768 MB 20 GB Low $0.04
Small 1.6 GHz 1.75 GB 225 GB Moderate $0.12
Medium 2 x 1.6 GHz 3.5 GB 490 GB High $0.24
Large 4 x 1.6 GHz 7 GB 1,000 GB High $0.48
Extra Large 8 x 1.6 GHz 14 GB 2,040 GB High $0.96
6-10-2011 8
The one-stop company for .NET development
Azure Storage
6-10-2011 9
BlobsTables
Queues
StorageHTTP
The one-stop company for .NET development
Windows Azure Storage Account• User specified globally unique account name
– Can choose geo-location to host storage account• US – “North Central” and “South Central”• Europe – “North” and “West”• Asia – “East” and “Southeast”
– Can CDN Enable Account• Blobs delivered via 18 global CDN nodes
– Can co-locate storage account with compute account• Explicitly or using affinity groups
• Accounts have two independent 512 bit shared secret keys
• 100TB per account
6-10-2011 10
The one-stop company for .NET development
Blob Storage Concepts
6-10-2011 11
BlobContainerAccount
contosocontoso
imagesimagesPIC01.JPGPIC01.JPG
videosvideos VID1.AVIVID1.AVI
http://<account>.blob.core.windows.net/<container>/<blobname>http://<account>.blob.core.windows.net/<container>/<blobname>
Pages/Blocks
Block/PageBlock/Page
Block/PageBlock/Page
PIC02.JPGPIC02.JPG
The one-stop company for .NET development
How Windows Azure Drives Works
6-10-2011 12
• Drive is a formatted page blob stored in blob service
• Mount obtains a blob lease • Mount specifies amount of local
storage for cache• NTFS flushed/unbuffered writes
commit to blob store before returning to app
• NTFS reads can be served from local cache or from blob store (cache miss)
Windows Azure Blob Service
Windows Azure Blob Service
Application
Lease
Drive X:
The one-stop company for .NET development
Table Storage Concepts
6-10-2011 13
EntityTableAccount
contoso
customers
Name =…Email = …
Name =…EMailAdd= …
photos
Photo ID =…Date =…
Photo ID =…Date =…
The one-stop company for .NET development
Table Storage
6-10-2011 14
The one-stop company for .NET development
Queue Storage Concepts
6-10-2011 15
MessageQueueAccount
order processing
customer ID order ID http://…
customer ID order ID http://…
adventureworks
The one-stop company for .NET development
Loosely Coupled Workflow with Queues
6-10-2011 16
• Enables workflow between roles– Load work in a queue
• Producer can forget about message once it is in queue
– Many workers consume the queue– For extreme throughput (>500 tps)
• Use multiple queues• Read messages in batches• Multiple work items per message
Queue
Input Queue (Work Items)
The one-stop company for .NET development
SQL Azure
6-10-2011 17
The one-stop company for .NET development
SQL AzureApplication Topologies
6-10-2011 18
The one-stop company for .NET development
Database Replicas
6-10-2011 19
Replica 1
Replica 2
Replica 3
DB
Replica 4
The one-stop company for .NET development
Service Provisioning Model
6-10-2011 20
• Each account has zero or more logical servers– Provisioned via a common portal– Establishes a billing instrument
• Each logical server has one or more databases– Contains metadata about database & usage– Unit of authentication, geo-location, billing, reporting– Generated DNS-based name
• Each database has standard SQL objects– Users, Tables, Views, Indices, etc– Unit of consistency
AccountAccount
ServerServer
DatabaseDatabase
The one-stop company for .NET development
SQL Azure (Costs)
Size/Meter Web Edition Monthly Charges
Business Edition Monthly Charges
Up to 1 GB relational database $9.99 -
Up to 5 GB relational database $49.95 -
Up to 10 GB relational database - $99.99
Up to 20 GB relational database - $199.98
Up to 30 GB relational database - $299.97
Up to 40 GB relational database - $399.96
Up to 50 GB relational database - $499.95
6-10-2011 21
The one-stop company for .NET development
Windows Azure CDN
6-10-2011 22
Browse to
cdn.customer.comGET
foo.jpg
Windows Azure Storage
Create Storage Accountvia Portal
Enable CDN forStorage account
• Enables a better user experience, global reach, increased engagement, more revenue
• Broad reach with 22+ locations globally
The one-stop company for .NET development
Windows Azure AppFabric
6-10-2011 23
The one-stop company for .NET development
AppFabric Caching• Distributed, in-memory application cache for Windows Azure apps• Primary use cases
– Session state provider for Windows Azure applications– Cache layer for Windows Azure applications that leverage storage in SQL
Azure Databases or Windows Azure storage
• Provided as a service – Provision, configure, and use– No installation or management of machines/instances– Dynamically increase and decrease cache size as needed– Same programming model for both cloud and on-premises
6-10-2011 24
The one-stop company for .NET development
Caching (Costs)
Size/Meter Monthly Charges
128 MB cache $45.00
256 MB cache $55.00
512 MB cache $75.00
1 GB cache $110.00
2 GB cache $180.00
4 GB cache $325.00
6-10-2011 25
The one-stop company for .NET development
Service Bus
6-10-2011 26
The one-stop company for .NET development
Service Bus (Costs)
Size/Meter Monthly Charges
Pay-as-you-go (1 connection) $3.99 per connection
5 Connections $9.95
25 Connections $49.75
100 Connections $199.00
500 Connections $995.00
6-10-2011 27
The one-stop company for .NET development
Access Control
• Claims based• Supports:– Active Directory– Windows Live ID– Google– Yahoo– Facebook
6-10-2011 28
The one-stop company for .NET development
Access Control (Costs)
Size/Meter Monthly Charges
100,000 Transactions $1.99
6-10-2011 29